<html>
<head>
<script type="text/javascript">
console.log("Hello, World!");
</script>
</head>
<body></body>
</html>
<html>
<head>
<script type="text/javascript" src="js/.js"></script>
</head>
<body></body>
</html>
<head>
나 <body>
안 어느 곳에서나 선언 가능<body>
의 끝부분에 <sccript>
태그를 둘 것을 권장한다. 이는, HTML이 다 해석된 다음 마지막에 스크립트가 실행되어 빠르게 처리되는 느낌을 줄 수 있다.true
/ false
“”
, null
, undefined
, 0
은 false
로 간주null
: 값이 없거나 빈 값Infinity
, NaN
포함Infinity
: 무한대. 어떤 수를 0으로 나누거나 Infinity
를 사용한 연산의 결과NaN
(Not a Number): 계산식의 결과가 숫자가 아님을 나타내는 상수var
, function
등 모든 선언문이 해당 scope의 처음으로 옮겨진 것처럼 동작undefined
로 초기화된다.var
는 전역 변수 타입으로, 내부 scope에서 var
키워드로 같은 변수를 선언하여도 전체 값이 변화됨. → const
, let
사용으로 해결const
키워드로 표현let
키워드를 사용하면 지역 변수처럼 동작하며 변수의 재선언이 불가하다.(var
는 재선언 가능)===
: 값이 일치하는지 확인(타입 포함)==
: 값만 비교+
: 문자열이 하나라도 존재할 경우 문자열 결합 연산자로 동작typeof
: 해당 변수의 타입 반환(null
은 object
가 나옴)// 객체 리터럴 -> 하나 이상의 프로퍼티 작성
var student = {
name: '홍길동',
age: 26
}
// 생성자 함수
function Student(name, area) {
this.name = name;
this.area = area;
}
var student1 = new Student('홍길동', 26);
.
연산자나 대괄호를 사용해서 속성에 접근한다.undefined
를 반환||
연산자를 함께 사용하여 값이 undefined
일 경우 대체값을 지정할 수 있음typeof
연산자를 통해 타입을 확인할 수 있다. null
은 원시타입이지만 object가 반환된다.[]
또는 new Array()
로 생성var arr1 = [];
var oddNums = [1, 3, 5, 7, 9];
var evenNums = new Array(0, 2, 4, 6, 8);
var arr2 = ['a', 1, 'b', 3];
:
과 ,
를 이용해 키-값 쌍 생성단, 추가된게 for in 문
내부 값을 간단한 방법으로 순회
for (var i in nums)
document.write(i + ": " + nums[i] + "<br>"); // i가 인덱스 번호가 됨
// 딕셔너리에서 사용할 경우 i가 각 key가 된다.
function
키워드로 함수 선언undefined
상태var plus = function(a, b) {
return a + b;
};
function funcA(x) {
var b = funcB(y) {
return x + y;
}
return b;
}
(function() {
var a = 10;
var b = 20;
console.log(a + b);
})(); // 함수 즉시 실행