我有这样的数组:

问题描述 投票:0回答:3
BTW这项工作:

var oldArray = [{'value': '1', 'label': 'a'}, {'value': '2', 'label': 'b'}] var newObj = {'value': 'all', 'label': 'all'} var result = [newObj, ...oldArray]
但会生成一个键的“ newobj”:

var oldArray = [newObj : {'value': 'all', 'label': 'all'}, 0: {'value': '1', 'label': 'a'}, 1:{'value': '2', 'label': 'b'}]

我希望按照我这样做,可以自动生成:
var result = [{'value': 'all', 'label': 'all'}, ...oldArray]

想象结果是:
var oldArray = [newObj : {0: 'all', 'label': 'all'}, 1: {'value': '1', 'label': 'a'}, 2:{'value': '2', 'label': 'b'}]

但这给了我一个错误。
现在我正在使用unshift,它有效,我想知道是否有一种与传播操作员相同的方法。
    

您可以通过spread解决此问题来解决此问题:
改变:

var result = [newObj, ...oldArray]

TO:
javascript arrays reactjs react-redux spread-syntax
3个回答
11
投票
var result = [{...newObj}, ...oldArray]

您可以使用

unshift()


1
投票

var oldArray = [{'value': '1', 'label': 'a'}, {'value': '2', 'label': 'b'}] var newObj = {'value': 'all', 'label': 'all'} oldArray.unshift(newObj); console.log(oldArray);


最新问题
© www.soinside.com 2019 - 2025. All rights reserved.