Javascript 创建一个新数组并合并
javascript或underline.js中是否有函数可以使用对象中的新值创建新数组? 我想首先重命名对象的值:year:“AllYears”和fruit:“AllFruits” 我想用新值创建新的MyArray2,用MyArray1创建CONCATJavascript 创建一个新数组并合并,javascript,arrays,object,underscore.js,Javascript,Arrays,Object,Underscore.js,javascript或underline.js中是否有函数可以使用对象中的新值创建新数组? 我想首先重命名对象的值:year:“AllYears”和fruit:“AllFruits” 我想用新值创建新的MyArray2,用MyArray1创建CONCAT MyArray2 = [{year: "AllYear", fruit: "AllFruits", quantity: 1},{year: "AllYear", fruit: "AllFruits", quantity: 1},{year:
MyArray2 = [{year: "AllYear", fruit: "AllFruits", quantity: 1},{year: "AllYear", fruit: "AllFruits", quantity: 1},{year: "AllYear", fruit: "AllFruits", quantity: 2}]
谢谢 您可以尝试将MyArray1推送到MyArray2:
MyArray2.push(MyArray1);
使用或并编辑值。使用下划线的
.map
组合来创建新的数组元素,并使用.extend
来复制和修改对象
Array2 = _.map(Array1, function(elt) {
return _.extend({}, elt, { year: "AllYear", fruit: "AllFruit" });
});
请注意,要更改值,我们不希望直接执行此操作,因为这会更改
数组1
中的值,因此我们需要为每个对象制作一个副本,这是我们使用下划线的.extend
完成的,同时指定新值。您的意思是什么“在javascript或下划线.js中是否有创建新数组的函数?”您创建了这样一个新数组:MyArray1=[{year:“2013”,fruit:“banana”,quantity:1},{year:“2014”,fruit:“orange”,quantity:1},{year:“2014”,fruit:“banana”,quantity:2}]
我想重命名对象的值:year:“AllYears:“AllYears”和水果:“AllFruits”您可以遍历数组并更改值“merge withMyArray1
”是什么意思?对不起,我的意思是“concat”而不是“merge”,它不会将MyArray1
的元素添加到MyArray2
,相反,MyArray2
将整个MyArray1
作为一个元素。这将改变Array1
中对象的值。这正是他想要的,“重命名我对象的值”,最后,我在Array2中遇到了一个问题:当我选择键>值时0@observatoire我不理解你的评论,请澄清。对torazaburo:我的结果为nullvar Result=uu.pull(u.where(行,{Year:“AllYear”,Fruit:“AllFruit”}),Quantity)//console.log(结果)>>数组[]
什么是数量
?你是说数量吗?
Array2 = _.map(Array1, function(elt) {
return _.extend({}, elt, { year: "AllYear", fruit: "AllFruit" });
});