다음은 몇 가지 보석입니다.
리터럴 :
var obj = {}; // Object literal, equivalent to var obj = new Object();
var arr = []; // Array literal, equivalent to var arr = new Array();
var regex = /something/; // Regular expression literal, equivalent to var regex = new RegExp('something');
기본값 :
arg = arg || 'default'; // if arg evaluates to false, use 'default', which is the same as:
arg = !!arg ? arg : 'default';
물론 우리는 익명의 함수를 알고 있지만, 그것들을 리터럴로 취급하고 그 자리에서 (클로저로) 실행할 수 있다는 것은 훌륭합니다.
(function() { ... })(); // Creates an anonymous function and executes it
질문 : 자바 스크립트에서 사용할 수있는 다른 훌륭한 구문 설탕은 무엇입니까?
답변
현재 날짜 시간을 밀리 초로 가져옵니다.
Date.now()
예를 들어, 코드 섹션의 실행 시간을 측정하려면 다음을 수행하십시오.
var start = Date.now();
// some code
alert((Date.now() - start) + " ms elapsed");
답변
개체 멤버십 테스트 :
var props = {a : 1, b : 2}; (props의 "a") // true (props의 "b") // true (props의 "c") // false
답변
Mozilla (및 IE7)에서는 다음을 사용하여 XML 상수를 만들 수 있습니다.
var xml = <elem> </ elem>;
변수를 대체 할 수도 있습니다.
var elem = "html"; var text = "일부 텍스트"; var xml = <{elem}> {text} </ {elem}>;
답변
익명 함수와 클로저를 사용하여 개인 변수 (정보 숨김) 및 관련 get / set 메서드를 만듭니다.
var getter, setter;
(function()
{
var _privateVar=123;
getter = function() { return _privateVar; };
setter = function(v) { _privateVar = v; };
})()
답변
프로토 타입 상속을 통해 네이티브 JavaScript 유형을 확장 할 수 있습니다.
String.prototype.isNullOrEmpty = function(input) {
return input === null || input.length === 0;
}