Programing

대괄호 Javascript 객체 키

lottogame 2020. 10. 17. 08:57
반응형

대괄호 Javascript 객체 키


누구든지 자바 스크립트에서 키를 할당하는 아래 방법이 왜 / 어떻게 작동하는지 설명 할 수 있습니까?

a = "b"
c = {[a]: "d"}

반환:

Object {b: "d"}

새로운 ES2015 (공식적으로 ES6로 알려진 EcmaScript 사양) 계산 된 속성 이름 구문 입니다. someObject[someKey]ES3 / 5에서 알고 있는 과제 의 속기입니다 .

var a = "b"
var c = {[a]: "d"}

다음에 대한 구문 설탕입니다.

var a = "b"
var c = {}
c[a] = "d"

실제로의 사용은 JavaScript 객체 를 생성하는 동안 []변수의 실제 값을 /속성 으로 사용하는 훌륭한 방법을 제공 합니다 .

나는 위의 답변에 상당히 만족하고 있으며 약간의 예를 들어 이것을 작성할 수 있었기 때문에 감사합니다.

Node REPL (노드 쉘) 에서 한 줄씩 코드를 실행했습니다 .

> var key = "fullName";     // Assignment
undefined
>
> var obj = {key: "Rishikesh Agrawani"}    // Here key's value will not be used
undefined
> obj     // Inappropriate, which we don't want
{ key: 'Rishikesh Agrawani' }
>
> // Let's fix
undefined
> var obj2 = {[key]: "Rishikesh Agrawani"}
undefined
> obj2
{ fullName: 'Rishikesh Agrawani' }
>

const animalSounds = {cat: 'meow', dog: 'bark'};

const animal = 'lion';

const sound = 'roar';

{...animalSounds, [animal]: sound};

결과는

{cat: 'meow', dog: 'bark', lion: 'roar'};


Also, only condition to use [] notation for accessing or assigning stuff in objects when we don't yet know what it's going to be until evaluation or runtime.

참고URL : https://stackoverflow.com/questions/32515598/square-brackets-javascript-object-key

반응형