我正在尝试在 JavaScript 中创建一个关联数组:
<script>
var cst_dta = new Array('name' => 'amar', 'total_bill' => 'akbar', 'phone' => 'anthony');
$(document).ready(function(){
alert(cst_data);
});
</script>
但是上面的代码并没有提醒任何东西!数组有什么问题?
我正在尝试在 JavaScript 中创建一个关联数组:
<script>
var cst_dta = new Array('name' => 'amar', 'total_bill' => 'akbar', 'phone' => 'anthony');
$(document).ready(function(){
alert(cst_data);
});
</script>
但是上面的代码并没有提醒任何东西!数组有什么问题?
你没有想到 JavaScript 不是 PHP 吗?
这根本不是正确的语法。
利用:
var cst_dta = {
'name' : 'amar',
'total_bill' : 'akbar',
'phone' : 'anthony'
};
您在此页面上有更多关于对象文字(和其他文字)的详细信息。
您可以将对象用作关联数组:
var cst_dta = {name:'amar',total_bill:'akbar',phone:'anthony'};
你可以访问它,
cst_data['name']
或cst_data['phone']
或 ..
但在这种情况下,它似乎不是很有用。这里cst_data.name
很好用。
基本上,对象被用作关联数组来将任意字符串绑定到任意值,通常是动态的。例如,在这里您在运行时从用户那里获取股票名称值:
var stock_name = get_stock_name_from_user();
var shares = get_number_of_shares();
portfolio[stock_name] = shares;
由于用户在运行时输入股票名称,因此您无法提前知道属性名称。由于您在编写程序时无法知道属性名称,因此您无法使用.
运算符访问投资组合对象的属性。
但是,您可以使用 [] 运算符,因为它使用字符串值(它是动态的并且可以在运行时更改)而不是标识符(它是静态的并且必须在程序中硬编码)来命名属性。