<html>
<body>
<input type="button" onclick="alert('HelloWorld')" value="Hello world" />
</body>
</html>
console.log('msg');
typeof "1"
typeof '1'
javascript escape character \
\n line
"string".length
"code".indexOf("o")
"code".indexOf("d")
var a="abd" , b='123';
alert(a+b);
;는 생략 가능하다.
자바스크립트에서 줄바꿈은 명령문의 종료와 같은 문법적 의미를 가진다.
대입 연산자(=), 동등 연산자(==), 일치 연산자(===)
프로그래밍에서 비교란 주어진 값들이 같은지, 다른지, 큰지, 작은지를 구분하는 것을 의미한다. 이 때 비교 연산자를 사용하는데 비교 연산자의 결과는 true나 false 중의 하나다. true는 비교 결과가 참이라는 의미이고, false는 거짓이라는 뜻이다. true와 false는 블린(boolean)이라고 불리는 데이터 형식인데 이것은 조건문에서 비중있게 다룰 것이다. 아래는 주요한 비교 연산자들의 종류와 그에 따른 예제들이다.
==
동등 연산자로 좌항과 우항을 비교해서 서로 값이 같다면 true 다르다면 false가 된다. '='가 두개인 것을 주의하자. '='가 하나인 것은 대입 연산자로 우항의 값을 좌항의 변수에 대입할 때 사용하는 것으로 의미가 완전히 다르다.
1
2
3
4
alert(1==2) //false
alert(1==1) //true
alert("one"=="two") //false
alert("one"=="one") //true
===
일치 연산자로 === 좌항과 우항이 '정확'하게 같을 때 true 다르면 false가 된다. 여기서 정확하다는 말의 의미에 집중하자. 아래 예를보자.
1
2
alert(1=='1'); //true
alert(1==='1'); //false
위의 결과는 이상하다. '==='는 숫자 1과 문자 1을 다르게 인식한다. 반면에 '=='는 양쪽의 값을 같다고 판단한다. 바로 이것이 '정확'의 의미다. 즉 ===는 서로 같은 수를 표현하고 있더라도 데이터 형이 같은 경우에만 같다고 판단하기 때문이다. 결론부터 말하면 == 연산자 대신 === 연산자를 쓰는 것을 강력하게 권한다. 몇가지 사례를 더 살펴보자.
0/0 NaN : NaN은 Not a Number의 줄임말. /0은 에러,
자바스크립트에서 1은 true로 간주하고 숫자 1이 아닌 숫자들은 false로 간주한다.
조건문 : conditional statement
<script type="text/javascript"></script>
vat id=prompt("id를 입력해주세요");
if(id==abc){
alert('good');}
</script>
javascript는 ECMASCRIPT라는 표준화를 따른다.
http://www.ecma-international.org/publications/standards/Ecma-262.htm
undefined 는 자바스크립트에서 false로 간주된다.
if(''){}
// 빈문자열은 undefined로 간주되고 false로 간주된다.
!flase == true
//아래의 경우 실행 가능. 변수나 특정 값 앞에 !를 붙여주면 false -> true로, true -> false로 변경해주기 때문이다.
var a='';
if(!a){alert('abc');}
/* 기타 flase로 간주되는 데이터 형*/
if(!''){
alert('빈 문자열')
}
if(!undefined){
alert('undefined');
}
var a;
if(!a){
alert('값이 할당되지 않은 변수');
}
if(!null){
alert('null');
}
if(!NaN){
alert('NaN');
}
반복문 : loop, iterate
document.write("html strings <br />");
함수는 function 이라는 키워드로 정의한다.
function function_name() {
//정의
}