JavaScript에서 new를 쓰지 않고 생성자 함수를 사용할 경우 에러가 발생할 수 있다. 이를 방지하기 위해 다음과 같은 코딩이 널리 사용된다고 한다. function A(arg) { if (!(this instanceof arguments.callee)) { return new A(arg); } // ... } new 생성자 함수()를 사용하면, 함수 내에서 this는 새로 생성한 객체를 의미한다. 하지만 new를 쓰지 않고 생성자 함수()를 사용할 경우, 함수 내에서 this가 window를 가리키며, return 값이 없을 경우 undefined를 반환하기 때문에 에러가 발생할 수 있다.
Function Declarations (함수 선언문)function foo() { ... } - interpret할 때 우선시되어 위치와 관계없이 함수 호출 가능Function Expressions (함수 표현식)var foo = function () { ... }; - 세미콜론 사용 권장Function Declarations vs Function ExpressionsFunction Declarations의 경우 위에서 아래로 해석된다는 코딩 일반 규칙에 어긋나므로 종종 혼란을 일으킨다. 따라서 Function Expressions 사용을 권장한다.참고 링크- https://javascriptweblog.wordpress.com/2010/07/06/function-declarations-vs-funct..
출처: https://stackoverflow.com/questions/6756104/get-size-of-json-objectJSON은 일반적인 JavaScript 개체와 달리 .length, .size 함수를 사용할 수 없다. 아래처럼 Object 객체를 이용해서 구한다. var myObject = {'name':'Kasun', 'address':'columbo', 'age':'29'} var count = Object.keys(myObject).length; console.log(count); // 출력: 3
- Total
- Today
- Yesterday