2012-04-24 3 views
1

구조체의 배열 요소를 생성시 설정하려고합니다. 가능한가?익명 구조체의 요소를 설정하십시오.

자, 먼저 내가 구조체를 정의했습니다 다음 배열

function struct(a, b) { 
    this.a=a; 
    this.b=b; 
} 

var foo = [ 
    new struct(1,2), 
    new struct(3,4), 
] 

을 설정하지만, 내가 anoynymous 기능을 원하는 것이 아무것도처럼 :

var foo = function(a, b) [ 
    (1,2), 
    (3,4), 
] 

주 : 그건 부정확하지만 생각을 본다.

답변

1

배열 리터럴 표기법 이외에도 개체 리터럴 표기법을 사용하고 싶습니다. 당신이 정말로 함수를 호출 할 경우

var foo = [ 
    {a:1,b:2}, 
    {a:3,b:4} 
]; 
console.log(foo[0].b); //-> 2 

, 당신은 (그것이 될 수 있지만 짧은 하나) 이름을 지정해야합니다 :

function s(a,b){ 
    return {a:a,b:b}; 
} 
var foo = [ 
    s(1,2), 
    s(3,4) 
]; 

당신은 new를 사용할 필요가 없습니다 키워드를 사용하여 새 객체를 만듭니다. 정상적인 함수 호출 내에서 새로운 인스턴스 —과 even set the prototype-based inheritance —을 모두 설정할 수 있습니다.

관련 문제