簡體   English   中英

將javascript列表轉換為字典

[英]Convert a javascript list to dictionary

我正在嘗試將javascript列表轉換為具有指定鍵的字典。 我正在使用以下代碼:

 let list = ['cat', 'rabbit', 'fish'] list = list.map(x => { return ({ animal: x }); }) console.log(list); 

當然這不起作用。 編輯:它確實

預期結果:

[
  {
    "animal": "cat"
  },
  {
    "animal": "rabbit"
  },
  {
    "animal": "fish"
  }
]

編輯:

letlist = list實際上是問題中的拼寫錯誤 - 它在我的真實代碼中是正確的。 我沒有測試這個片段,因為我認為它不起作用。 然后我也混淆了自己並且確實輸入了錯誤的預期結果。 我的代碼更復雜,發布它沒有意義。 作為作品,我認為我的錯誤必須在其他地方。 謝謝您的幫助。

當然這不起作用。

它確實(如果我們在Let修復拼寫錯誤,我們假設您想要一個包含三個對象的數組),那么您只是不使用結果:

  let list = ['cat', 'rabbit', 'fish'] // vvvvvvv list = list.map(x => { return({animal: x}); }); console.log(list); 

或者簡要介紹一下簡潔的箭頭功能:

 let list = ['cat', 'rabbit', 'fish'] list = list.map(x => ({animal: x})); console.log(list); 

我會幫助@TJ Crowder的答案:Ecma Script 6(ES6)無法在舊瀏覽器和Internet Explorer中呈現(只是箭頭函數=> ),您可以使用下面的代碼:

 var list = ['cat', 'rabbit', 'fish'] list = list.map(function(x) { return ({ animal: x }); }); console.log(list); 

如果您保留原始列表,可以使用以下代碼:

 var list = ['cat', 'rabbit', 'fish'] var result = list.map(function(x) { return ({ animal: x }); }); console.log(list); console.log(result); 

ES6中的典型事物是:

暫無
暫無

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

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