본문 바로가기

자바스크립트30

[JavaScript] Strict mode (1) Strict mode란 - 암묵적 전역이 발생하면 오류가 자주 일어나므로 키워드를 사용하지 않았을 때 에러를 발생시켜 주는 방법이다. - 즉, 엄격하게 문법 검사를 하겠다 라고생각하면된다. (2) Strict mode 선언 - 스크립트의 시작 혹은 함수의 시작 부분에 "use strict"를 선언하면 활성화가 된다. 'use strict'; // 스크립트 전체에 strict mode가 적용된다. function foo() { x = 10; // error x의 키워드를 작성하지않았다. } foo(); function foo() { 'use strict'; // 함수 몸체의 선두에 추가하면 해당 함수와 중첩된 내부 함수에 strict mode가 적용된다. x = 10; // error x의 키워드를.. 2023. 10. 16.
[JavaScript] 스코프(Scope) (1) 스코프(유효범위)란 - 참조 대상 식별자를 찾아내기 위한 규칙이다. - 전역 스코프와 지역 스코프로 나뉜다. - 전역 스코프(어디서든지 참조 가능) → 전역 변수(전역에 선언된 변수) - 지역 스코프(함수 코드 블록, 함수 자신, 하위 함수에서만 참조 가능) → 지역 변수(함수 내에서 선언된 변수) var a = 'wangi'; // 전역변수 function x() { var b = 'eddy'; // 지역변수 console.log(a); // 'wangi' console.log(b); // 'eddy' } x(); console.log(a); // 'wangi' console.log(b); // error b는 지역변수 (2) 상위 스코프를 결정하는 방법 - 동적 스코프와 렉시컬 스코프 두 가지.. 2023. 10. 16.
[JavaScript] 프로토타입 (1) 프로토타입 객체란 - JavaScript의 모든 객체는 자신의 부모 역할을 담당하는 객체와 연결되어 있는데 이러한 부모 객체를 prototype이라 한다. - 생성자 함수에 의해 생성된 각 객체에 공유 프로퍼티를 제공하기 위해 사용한다. - .prototype은 변수._proto_로 접근할 수 있다. 또한 변수.prototype은 함수만 가능하다. var a = 22 console.log(a.__proto__ === Number.prototype); // true console.log(a.prototype === Number.prototype); // false function b(x) { this.x= x; } var c = new c ('test'); console.log(b.__proto__.. 2023. 10. 13.
[JavaScript] 객체 (1) 객체 - 키와 값을 가지는 프로퍼티(property)로 구성되어 있으며, 프로퍼티의 값이 함수일 경우, 이를 메소드라 한다. - 프로퍼티를 열거할 때 순서를 보장하지 않는다. - 프로퍼티를 중복 선언 할 수 없다. - 프로퍼티 키는 문자열이나 symbol값이 지정되며 이외의 값은 암묵적으로 타입이 문자열로 변환된다. - 객체의 생성 방법 (리터럴, Object(), 생성자 함수) //-------리터럴----- var a = { name : "wangi", age : 26 } console.log(typeof(a), a); // object {name: "wangi", age: 26} //-------Object()---- var b = new Object(); // Object 생성자 함수 b... 2023. 10. 4.