我是Java的新手,我想知道如何在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: {}
答案 0 :(得分: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 :(得分: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);