添加阵列关联数组/对象[重复]

问题描述 投票:0回答:2

这个问题已经在这里有一个答案:

我是新来的Javascript和我想知道如何使在JavaScript关联数组。我希望把我的阵列主阵列中的关联数组。我知道如何做到这一点在PHP。

PHP相当于:

$associativeArray = [
    [
        'name' => 'Bob',
        'age' => '18',
        'address' => '442 Grand Ave'
    ],
];

我该怎么办JavaScript中的一样吗?

这里是我的代码:

var mainArray = {};

var arr = [];
arr['name'] = 'Bob';
arr['age'] = '18';
arr['address'] = '442 Grand Ave';

arr.push(mainArr);

console.log(mainArr); // output: {}
javascript jquery arrays json object
2个回答
2
投票

在Javascript中,您使用{...}定义objects(键值对,大致相当于在PHP关联数组),并[...]定义arrays。什么你要找的是:

var arr = [];

var obj = {};
obj['name'] = 'Bob';
obj['age'] = '18';
obj['address'] = '442 Grand Ave';

arr.push(obj);

console.log(arr);

或更简洁:

var array = [{
  name: 'Bob',
  age: '18',
  address: '442 Grand Ave',
}];

console.log(array); // output: {}

在进一步的说明,JavaScript并允许混合数字索引(例如arr[0])和字符串键(例如obj['name'])对单个对象,但在实践中,这一般不提倡,因为它可能会相当混乱。


1
投票

JavaScript是比PHP一个很大的不同。你已经用PHP所示的例子不会用JavaScript工作。我不知道你想实现什么,但这里的排序更新的代码,你想干什么。

var mainArray = {};

var arr = [];
mainArray['name'] = 'Bob';
mainArray['age'] = '18';
mainArray['address'] = '442 Grand Ave';

arr.push(mainArray);

console.log(arr); 
© www.soinside.com 2019 - 2024. All rights reserved.