arr [0] .price的结果在函数外是'undefined'。为什么变量arr在函数外被定义并且数据被推到它之外时不可用?从JavaScript数组中的对象键获取值
var arr = [];
function get_data() {
$.ajax({
url: 'http://bitcoinprice.co.uk/site-options/',
dataType: 'json',
success: function(data) {
var price = data['gbp_price'];
var abs_change = data['gbp_abs_change'];
var p_change = data['gbp_change'];
var market_cap = data['gbp_market_cap'];
var today_max = data['gbp_today_max'];
var today_min = data['gbp_today_min'];
var obj = {
'price' : 50,
'abs_change' : abs_change,
'p_change' : p_change,
'market_cap' : market_cap,
'max' : today_max,
'min' : today_min
};
arr.push(obj);
console.log(arr[0].price); // 50
}
});
}
get_data();
console.log(arr[0].price) // Uncaught TypeError: Cannot read property 'price' of undefined(…)
我似乎无法找到答案。我试图从函数get_data()之外的关键“价格”中获得价值。
我确定我在这里错过了一些简单的东西。
试'的常用3 [0] .price' – georg
的Javascript没有关联数组,仅基于索引的阵列。 – connexo
返回“无法读取未定义(...)的属性'价格'” – Nick