簡體   English   中英

在多維對象中使用變量作為鍵

[英]Using variables as keys in multidimensional object

如果我有一些值,並且想要將其存儲為對象。 所以最后我需要調用JSON.stringify() (因為我試圖將其存儲在chrome擴展名中)

var id = '1';
var name = 'Mali Bakery'
var url = 'http://example.com/'

所以我認為最好的辦法是將其排序為:

var items = {
     id : {
        'name': name,
        'url': url
     }
}

但是我不知道如何將變量放入對象模板中。

我嘗試使用

item = {}
item[id] = id
item[id].name = name  
// etc

items.push(item);

// and also, this approach too
items.id = id

但是沒有成功。

您可以將id放在方括號[]以便將其評估為變量值:

 var id = '1'; var name = 'Mali Bakery' var url = 'http://example.com/' var items = { [id] : { name, url } } console.log(items); 

請注意,您不應使用name作為變量的名稱!

你可以這樣做

var id = '1';
var name = 'Mali Bakery'
var url = 'http://example.com/'
var items = {}

items[id] = {
    'name': name,
    'url': url
}

console.log(items);

這給出以下輸出:

{ 1:{ name: "Mali Bakery", url: "http://example.com/" } }

var items = {};
items[id] = { name, url };
    var id = '1';
    var name = 'Mali Bakery'
    var url = 'http://example.com/'

    var obj = {
            'name': name,
            'url': url
         }

    var items = {};

    items[id] = obj;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM