微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将javscript对象添加到for循环中的现有javscript对象

如何解决将javscript对象添加到for循环中的现有javscript对象

我正在尝试将JavaScript对象循环添加到现有的JavaScript对象中。

Dim X As Variant
X = Range("A1:C3").Value2
Dim Y As Variant
n = UBound(X,2)
m = n + 1
Z = UBound(X,1)
ReDim Y(1 To n,1 To m)


'Set All values to zero
For i = 1 To n
    For j = 1 To m
        Y(i,j) = 0
    Next j
Next i

' Set  offset diagonal to 1
For i = 1 To n
    Y(i,i + 1) = 1
Next i

' Matrix MMult
X = Application.WorksheetFunction.MMult(X,Y)
' Add 1 to the first column
For i = 1 To Z
    X(i,1) = 1
Next i

我尝试使用 var object1 = { "key1": true,"header": "Title A","Size": 100}; $.each(elements,function (i,item) { let headerdisplay = ''; headerdisplay = this.title; var row = { "key1": true,"header": ""+headerdisplay+"","Size": 100}; Object.assign(object1,row); }); ,但是它只给出最后一个对象。 预期输出数组类似于

object.assign()

请让我知道如何将对象添加到现有的一个循环中

解决方法

由于您已经在使用jQuery,为什么不尝试使用$.extend()功能呢?它应该看起来像这样:

 var object1 = { "key1": true,"header": "Title A","Size": 100};
$.each(elements,function (i,item) {
    let headerDisplay = '';
    headerDisplay =  this.title;
    var row = { "key1": true,"header": ""+headerDisplay+"","Size": 100};
    $.extend(object1,row)
  });

请记住,此方法将修改第一个对象1。 如果这不是预期的行为,则可以传递一个空对象作为该函数的第一个参数,然后将结果传递给另一个变量,如下所示:

const newObject = $.extend({},object1,row)

不确定您要做什么,但是也许有更好的选择。尝试将对象集合保存在数组中可能是另一种可行的解决方案。祝你好运!

,

请尝试一下...:

 var object1 = { "key1": true,"Size": 100};
 var res = [object1];
$.each(elements,"Size": 100};
    res.push(row);
  });

现在您将res设为finalObj

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。