簡體   English   中英

在Javascript中將數組轉換為對象

[英]Converting an Array into object in Javascript

我想知道將Js中的數組轉換為對象的最佳方法。

這是我想要做的樣本。 輸入=> ['abc','def']; 輸出=> {abc:true,def:true}

我使用下面的代碼完成了它。 但只是想知道是否

**function toObject(strings) {
    var rv = {}
    strings.forEach(string => {
        rv[string] = true
    })
  return rv
}**

此功能用於此目的。 但任何專家都能以最好,最有效的方式開展工作。

不知道你的意思是什么,以最好和最有效的方式 ,因為根據我的不錯 ,這是一個不那么精簡的版本

var output = strings.reduce( (a,c) => (a[c]=true, a), {})

演示

 var strings = ['abc', 'def']; var output = strings.reduce( (a,c) => (a[c]=true, a), {}); console.log(output); 

您可以映射單個對象並將其分配給同一對象。

 var array = ['abc', 'def'], object = Object.assign(...array.map(key => ({ [key]: true }))); console.log(object); 

暫無
暫無

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

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