$。在jquery中使用某些条件进行扩展

$。在jquery中使用某些条件进行扩展,jquery,Jquery,如何使用$。在一定条件下扩展 obj=[{..}, {..}, {....}]; this.model.axes=[{..}, {..}, {...}]; $.extend(true, this.model.axes, obj); obj是json对象的数组,与此.model.axes相同。我想将值从obj扩展或合并到model.axes,但跳过前两个索引。这意味着无需将值与this.model.axes[0]和this.model.axes[1]从obj[0]和obj[1]合并 我想将o

如何使用
$。在一定条件下扩展

obj=[{..}, {..}, {....}];

this.model.axes=[{..}, {..}, {...}];

$.extend(true, this.model.axes, obj);
obj
是json对象的数组,与此.model.axes相同。我想将值从
obj
扩展或合并到
model.axes
,但跳过前两个索引。这意味着无需将值与
this.model.axes[0]
this.model.axes[1]
obj[0]
obj[1]
合并

我想将
obj[0]
合并到
this.model.axes[2]
obj[1]
合并到
this.model.axes[3]
这样

如何从
model.axes
跳过前两个json对象

谢谢


Siva

如果您想要将
obj
数组连接到
this.model.axes
,而不使用
this.model.axes
的前两个元素,则以下操作将为您完成:

this.model.axes = this.model.axes.slice(2).concat(obj);
()

如果要将
this.model.axes
的值替换为
obj
的值,从
this.model.axes
的第三个元素开始,然后使用以下方法:

this.model.axes = this.model.axes.slice(0, 2).concat(obj);
for (var i = 0; i < obj.length; i += 1) {
    if (obj[i]) {
        $.extend(true, this.model.axes[i + 2], obj[i]);
    }
}
()

最后,如果要扩展数组中的对象,从
this.model.axes
的第三个元素开始,一直扩展到
obj
的最后一个元素,则需要以下操作:

this.model.axes = this.model.axes.slice(0, 2).concat(obj);
for (var i = 0; i < obj.length; i += 1) {
    if (obj[i]) {
        $.extend(true, this.model.axes[i + 2], obj[i]);
    }
}
for(变量i=0;i
()

var-arr=[{id:1},{id:2},{id:3}];
var arr2=[{name:“joe”},{name:“john”},{name:“jack”},{name:“Jill”}];
函数myMerge(arr1、arr2、start){
var trimmed=arr2.slice(开始);
对于(变量i=0;i

工作示例

如果obj中有任何新的json对象,它是否会合并到model.axes?我只想将obj合并到this.model.axes,但从2个索引(this.model.axes[2])开始,您的意思是要用一个新值替换
obj[0]
的旧值吗,依此类推?还是希望数组是
[this.model.axes[0],this.model.axes[1],{this.model.axes[2],obj[0]}…]