ECMA Script? 자바스크립트는 1995년 넷스케이프 웹 브라우져에서 웹페이지에 동적인 요소를 구현하기 위해서 발명 됨. 이후 많은 브라우져를 지원하면서 자바스크립트가 공통적으로 잘 작동하기 위해서 표준 규격이 필요하게됨. Ecma 인터내셔널에 의해 제정된 ECMA-262 기술 규격에 의해 정의된 범용 스크립트 언어. 스크립트 언어가 준수해야 하는 규칙, 세부 사항 및 지침을 제공한다. JavaScript는 ECMAScript 사양을 준수하는 범용 스크립팅 언어이다. ECMA Script 지원이 상이한 이유 JavaScript 엔진에는 Google Chrome의 V8, Mozilla Firefox의 SpiderMonkey와 같이 여러 종류가 존재함. 새로운 버전의 ECMAScript를 발표한다고해서..
객체? 실생활에서 우리가 인식할 수 있는 사물로 이해할 수 있음. 일반적으로 여러 데이터와 함수로 이뤄진다. 객체란 이름(key)과 값(value)으로 구성된 프로퍼티(property)의 정렬되지 않은 집합. var person = { name: 'Park Jin', age: 31, introduce: function() { return 'my name is ' + this.name + ' and my age is ' + this.age } }; console.log('person.name :: ', person.name); // person.name :: Park Jin console.log('person.age :: ', person.age); // person.age :: 31 console.log..
매개변수 다른 언어와 달리 자바스크립트에서는 매개변수의 타입을 명시하지 않는다. 정의된 파라미터의 갯수보다 많거나 적더라도 오류를 내지 않는다. 적을경우 나머지 파라미터는 undefined처리함. 많을경우 나머지 파라미터는 무시 또는 arguments로 접근 가능함. function parameterFunction(first, second) { console.log('first :: ', first); console.log('second :: ', second); return first + second; } // first :: 1 // second :: undefined // result1 :: NaN var result1 = parameterFunction(1); console.log('result1..
블록 스코프 Vs 함수 스코프 블록 스코프: 블록({})으로 싸여진 범위만큼 스코프가 결정됨(Ex. Java) // 코드 추가 예정 함수 스코프: 함수 블록으로 싸여진 범위만큼 스코프가 결정됨. 함수는 자신이 정의된 범위 안에서 정의된 모든 변수 및 함수에 접근가능. function functionScope() { for (var i = 0; i < 3; i++) { // for block i :: 0 // for block i :: 1 // for block i :: 2 console.log('for block i :: ', i); } // outside for block i :: 3 console.log('outside for block i :: ', i); } functionScope(); cons..
변수 유효범위? 변수를 어디에서 접근할 수 있느냐를 가리킨다. 종류 범위 소멸 시점 전역 변수 코드 내에서 어디서든 변수에 접근할 수 있음 함수가 종료되면 메모리에서 사라짐. 지역 변수 함수 내에서 변수를 정의하고 접근할 수 있음 웹 페이지가 닫히면 메모리에서 사라짐. 함수 매개변수도 지역 변수로 간주하며 해당 함수의 본문 내에서 접근 가능. 지역 변수와 전역 변수의 이름이 같을 경우 지역 변수가 우선순위가 높음. 지역 변수 function localScope() { var local = 1; console.log('local :: ', local); } localScope(); // local :: 1 console.log(local); // ReferenceError: local is not defi..
함수? 특별한 목적의 작업을 수행하도록 설계된 독립적인 블록을 의미한다. 함수는 필요할 때마다 호출하여 해당 작업을 반복 및 재사용할 수 있다. 함수 특징 자바스크립트에서는 함수도 하나의 데이터 타입으로 변수에 대입 및 파라미터로 넘길수 있음. (일급객체) 함수내에 다른 함수를 정의 할 수 있다. 함수 선언 function키워드로 선언한다. 함수의 이름을 정의해준다.. 괄호안에 함수내에서 사용할 파라미터들을 정의한다. 파라미터가 여러개일 경우 콤마(,)로 구분한다. 중광호({})로 둘러싸 함수의 기능을 정의한다. function 함수이름(매개변수1, 매개변수2,...) { // 함수가 호출되었을 때 실행하고자 하는 실행문; } function printAddNumber(x, y) { console.log..