javascript - JavaScript 中的嵌套多维数组

标签 javascript

鉴于此代码:

<script type="text/javascript">
    var arr = [];
    var names = [{name : 'George'}, {name : 'Ringo'}, {name : 'Paul'}, {name : 'John'}];
    var surnames = [{surname : 'Harrison'}, {surname : 'Starr'}, {surname : 'McCartney'}, {surname : 'Lennon'}];

    for (i = 0; i < names.length; i++) {
            arr['firstname'] = names[i];
        for (j = 0; j < surnames.length; j++) {
            arr['firstname']['surname'] = surnames[j];
            arr['firstname']['surname']['index'] = i;
            console.log(arr);
        }
    }
</script>

运行时,内循环中的输出将仅显示所有条目上姓氏数组(Lennon)和 i(3)的最后一个值。我想要实现的输出是对于每个名字,姓氏将分配给所有名字(例如约翰·哈里森、约翰·斯塔尔等),索引(i)将从 0 增加到 3。谢谢。

最佳答案

你想要这样的东西吗?

var arr = [];
var names = [{
  name: 'George'
}, {
  name: 'Ringo'
}, {
  name: 'Paul'
}, {
  name: 'John'
}];
var surnames = [{
  surname: 'Harrison'
}, {
  surname: 'Starr'
}, {
  surname: 'McCartney'
}, {
  surname: 'Lennon'
}];

for (i = 0; i < names.length; i++) {
  arr.push({
      index: i,
      firstname: names[i].name,
      surname: surnames[i].surname
    });
  }
  console.log(arr);

关于javascript - JavaScript 中的嵌套多维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37878485/

相关文章:

javascript - 在 angular2 中使用 ngFor 不显示迭代名称

javascript - AngularJS Http 拦截器,显示 Bootstrap 警报

php - 如果我的数量降至 0,如何停止更新按钮?

java - Rhino - 可编写脚本的方法 : Object get (String name, 可编写脚本的启动)未找到正确的 key (数字字符串)

javascript - 无法使用 jQuery .post() 使数据表工作

javascript - 如何在ascx中获取客户端id devexpress控制

javascript - 消除 HTML 弹出窗口的延迟

javascript - 能否使内部链接在客户端生成的 HTML 页面中起作用?

javascript - 正则表达式西类牙语和阿拉伯语单词

javascript - 关于 javascript (body-tag) 的快速问题