我是es6的新手,我有一个对象数组,如下所示:
checkProps = [ {symbol: rwerwe}, {side: Buy}, {status: Hey} ]
使用for循环,我想创建一个类似于: myurl = localhost:3000/symbol=rwerwe&side=Buy&status=Hey的字符串
为此,我必须访问每个对象的键,并使用concat进行字符串组合。我使用了Object.keys,但它返回整数。我想要一些东西来返回符号,边和状态。该怎么做呢?
发布于 2017-03-02 08:35:37
请尝试以下操作:
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)
发布于 2017-03-02 08:32:11
您需要遍历数组并将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("&");
https://stackoverflow.com/questions/42550099
复制相似问题