2014-01-10 109 views
0

我在下面的代碼中遇到了問題。未捕獲的SyntaxError:意外的標識符(Javascript對象)

我有一個函數等對象,我也需要一個語言環境存儲對象。這可能嗎? 我總是收到試圖執行此操作的「意外標識符」錯誤。

var object = { 

    var STORAGE = new Object(); 
    STORAGE.one = null; 
    STORAGE.two = null; 
    STORAGE.three = null; 
    STORAGE.four = null; 

    one: function(){ 
     //function one 
    }, 

    two: function() { 
     //function 2 
    } 
}; 
+6

你不能把任意代碼的對象文本的中間。 – SLaks

+0

您隨機投入代碼... –

+0

您已經重疊了構建對象的兩種不同方式。 – Pointy

回答

0

你想要的是實現這樣的:

var object = (function(){ 
    var STORAGE = new Object(); 
    STORAGE.one = null; 
    STORAGE.two = null; 
    STORAGE.three = null; 
    STORAGE.four = null; 
    return {  
    one: function(){ 
     //function one 
    }, 

    two: function() { 
     //function 2 
    } 
    }; 
})(); 

乾杯

+0

非常感謝你,那就是我正在尋找的東西。 – user3182431

+0

很高興幫助你。歡呼聲,來自玻利維亞的拉巴斯 –

1

您不能在對象文本中聲明變量或運行任意代碼。

你必須使用一個property:和嵌套對象字面:

var object = { 

    STORAGE: { 
    one: null, 
    two: null 
    // ... 
    } 

    one: function() { } 
    // ... 
} 
0

這就是你想要的?

var object = { 

    STORAGE: { 
     one: null, 
     two: null, 
     three: null, 
     four: null 
    }, 

    one: function(){ 
     //function one 
    }, 

    two: function() { 
     //function 2 
    } 
}; 
相關問題