es6 javascript 대상 속성의 간결 한 표현법

2015 단어 노트
ES6 는 변수 와 함 수 를 대상 의 속성 과 방법 으로 직접 기록 할 수 있 습 니 다.이런 글 씨 는 더욱 간결 하 다.
var foo = 'bar';
var baz = {foo};
baz // {foo: "bar"}
//     
var baz = {foo: foo};
위의 코드 에 따 르 면 ES6 는 대상 에 속성 명 만 쓰 고 속성 값 은 쓰 지 않 는 다.이 때 속성 값 은 속성 명 이 대표 하 는 변수 와 같 습 니 다.다음은 또 다른 예 다.
function f(x, y) {
	return {x, y};
}
//     
function f(x, y) {
	return {x: x, y: y};
}
f(1, 2) // Object {x: 1, y: 2}
속성 약자 외 에 방법 도 약자 로 쓸 수 있다.
var o = {
	method() {
		return "Hello!";
	}
};
//     
var o = {
	method: function() {
		return "Hello!";
	}
};
다음은 실제 적 인 예 이다.
var birth = '2000/01/01';
var Person = {
	name: '    ',
	//     birth: birth
	birth,
	//      hello: function ()...
	hello() { console.log('       ', this.name); }
};
이런 문법 은 함수 의 반환 값 에 사용 되 기 때문에 매우 편리 할 것 이다.
function getPoint() {
	var x = 1;
	var y = 10;
	return {x, y};
}
getPoint()
// {x:1, y:10}
CommonJS 모듈 출력 변 수 는 간결 한 쓰기 에 적합 합 니 다.
var ms = {};
function getItem (key) {
	return key in ms ? ms[key] : null;
}
function setItem (key, value) {
	ms[key] = value;
}
function clear () {
	ms = {};
}
module.exports = { getItem, setItem, clear };
//     
module.exports = {
	getItem: getItem,
	setItem: setItem,
	clear: clear
};
속성의 값 부여 기 (setter) 와 값 추출 기 (getter) 는 사실상 이런 표기 법 을 사용한다.
var cart = {
	_wheels: 4,
	get wheels () {
		return this._wheels;
	},
	set wheels (value) {
		if (value < this._wheels) {
			throw new Error('      ! ');
		}
		this._wheels = value;
	}
}
간결 한 쓰기 의 속성 명 은 항상 문자열 이 므 로 이상 하 게 보 이 는 결 과 를 초래 할 수 있 습 니 다.
var obj = {
	class () {}
};
//     
var obj = {
	'class': function() {}
};
위의 코드 에서 class 는 문자열 이기 때문에 키워드 에 속 하기 때문에 문법 해석 이 틀 리 지 않 습 니 다.
어떤 방법의 값 이 Generator 함수 라면 앞 에 별 번 호 를 붙 여야 합 니 다.
var obj = {
	* m(){
		yield 'hello world';
	}
};

좋은 웹페이지 즐겨찾기