Development/JavaScript, jQuery, ...(535)
-
객체 리터럴 vs 배열 리터럴
객체 리터럴 vs 배열 리터럴
-
this인자와 this바인딩, 메소드 호출시 this바인딩
this인자와 this바인딩· 함수를 호출할 때 매개변수로 전달되는 인자값과 arguments객체외에 this인자도 함수 내부에 암묵적으로 전달됩니다.· this는 자바스크립트의 함수가 호출되는 방식(호출 패턴)에 따라 this가 참조하는 객체가 달라집니다. 이것을 this 바인딩이라고 합니다. 메소드 호출시 this바인딩· 객체의 프로퍼티가 함수일 경우, 이 함수를 메소드라고 합니다.· 이 메소드를 호출할 때, 메소드 내부 코드에서 사용된 this는 해당 메소드를 호출한 객체로 바인딩됩니다.· 자바스크립트에서 함수를 호출하게 되면 해당 함수 내부 코드에 사용된 this는 전역 객체에 바인딩됩니다.· 자바스크립트의 모든 전역 변수는 이 전역 객체의 프로퍼티입니다.
-
함수의 표준 프로퍼티, Function.prototype객체
함수의 표준 프로퍼티· 자바스크립트 함수는 일반 객체와 달리 추가적으로 함수 객체만의 표준 프로퍼티를 가집니다.· 모든 함수들은 부모역할을 하는 프로토타입 객체인 Function.prototype객체를 가집니다.
-
함수 호이스팅(Function hoisting), 함수 호이스팅 발생 원인, Uncaught TypeError
함수 호이스팅(Function hoisting)· 선언적 함수 형태로 함수를 정의할 경우 함수의 유효범위는 코드의 맨처음부터 적용됩니다. 이것을 함수 호이스팅이라고 합니다.· 함수 호이스팅이 발생하면 함수 사용전에 반드시 선언해야 한다는 규칙을 무시하게 되므로 코드의 구성과 구조를 엉성하게 만들 수 있습니다.· 그래서, 함수 표현식을 사용한 익명함수를 사용할 것을 권장합니다. 함수 호이스팅 발생 원인함수 호이스팅 발생 원인은 자바스크립트의 변수 생성작업과 초기화 작업이 서로 분리되어서 진행되기 때문입니다. Uncaught TypeError함수 표현식을 사용할 경우 함수 호이스팅이 일어나지 않아 함수 생성전에 호출시 Uncaught TypeError가 발생합니다.
-
기본타입과 표준메서드, 표준메서드
기본타입과 표준메서드· 자바스크립트는 숫자, 문자열, 불린값에 대해 각 타입별로 호출 가능한 표준 메소드를 정의하고 있습니다. · 기본 타입의 값들에 대해 객체 형태로 메소드를 호출할 경우, 이 기본값들은 메서드 처리 순간에 객체로 변환되고 그 다음 각 타입별 표준 메서드를 호출하게 됩니다. · 그리고 메소드 호출이 종료되면 다시 기본값으로 되돌아 갑니다. 표준메서드
-
parseFloat(string)
parseFloat(string)· 문자열을 부동 소수점 수, 즉 실수로 변환할 때 사용하는 함수입니다.· 문자열에서 숫자가 끝날 때까지만 숫자로 변환합니다. · parseInt()와 마찬가지로 문자열의 처음이 문자로 시작하여 변환이 불가능할 경우 NaN 값을 돌려줍니다.