2017-03-02 41 views
0

我是新來ES6和我有對象的數組象下面這樣:獲取訪問對象的數組的鍵在ES6

checkProps = [ {symbol: rwerwe}, {side: Buy}, {status: Hey} ] 

隨着一個循環我想創建像一個字符串: myurl =本地主機:3000 /符號= rwerwe &側=購買&狀態=嘿

爲此,我必須得到存取每個對象的密鑰和使用的concat的字符串組成。我使用Object.keys,但它返回整數。我想要一些東西來回報符號,邊和狀態。這個怎麼做?

回答

2

請試試這個:

var checkProps = [ {symbol: 'rwerwe'}, {side: 'Buy'}, {status: 'Hey'} ]; 
 
var urlStr = 'localhost:3000/'; 
 
var urlParams = []; 
 
checkProps.forEach(function(o) { 
 
    var keys = Object.keys(o); 
 
    keys.map(function(key) { 
 
     urlParams.push(key + '=' + o[key]) 
 
    }); 
 
}); 
 

 
urlStr += urlParams.join('&'); 
 
console.log(urlStr)

+0

真棒!非常感謝 :) – user7334203

0

您需要遍歷數組並將Object.keys應用於項目。

const parameters = checkProps.map(item => Object.keys(item).map(key => key + "=" + item[key])[0]) 
          .join("&"); 
const myUrl = `localhost:3000/${parameters}`; 

這是一個有點吸塵器ES2017和Object.entries

const parameters = checkProps.map(item => Object.entries(item)[0]) 
          .map(parameter => parameter.join("=")) 
          .join("&");