[英]Multi-dimensional associative array with named index
花了一些时间并用谷歌搜索,但我似乎无法用Javascript实现:
PHP:
$items['01A']['price'] = "$30";
$items['01A']['description'] = "Description1";
$items['02B']['price'] = "$60";
$items['02B']['description'] = "Description2";
输出:
Array
(
[01A] => Array
(
[price] => $30
[description] => Description1
)
[02B] => Array
(
[price] => $60
[description] => Description2
)
)
好吧,我可以这样:
var obj = {
'0113A5' : {
'price' : '1200',
'discount' : '5'
},
'0213A5' : {
'price' : '1800',
'discount' : '0'
}
};
...但是无法在外观内分配值,因为:
obj['0313A5']['price'] = "2000";
//or
obj.0313A5.price = "2000";
...引发错误。
您需要先创建空对象,然后再为其分配属性,例如
var obj = {};
obj['0113A5'] = {};
obj['0113A5'].price = '1200';
obj['0113A5'].discount = '5';
obj['0213A5'] = {};
obj['0213A5'].price = '1800';
obj['0213A5'].discount = '0';
var obj = {
'0113A5' : {
'price' : '1200',
'discount' : '5'
},
'0213A5' : {
'price' : '1800',
'discount' : '0'
}
};
obj['0113A5']['discount'] = '222';
alert(obj['0113A5']['discount']);
obj['0113A5'].discount = '333';
alert(obj['0113A5']['discount']);
是有效的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.