javascript - chrome 开发人员工具控制台中对象之间的差异

标签 javascript google-chrome object google-chrome-devtools

当我将我的一个对象(通过 ajax 调用创建)打印到控制台时,我返回:

Object
discreet: Array[2]
range: Array[2]
__proto__: Object

但是当我手动创建对象时,我正确地返回了:

Object {range: Array[2], discreet: Array[2]}
discreet: Array[2]
range: Array[2]
__proto__: Object

有人可以向我解释这两个对象之间的区别,以及为什么我无法访问第一个对象的属性吗?

编辑:第一个对象由以下人员创建:

var obj = {}

$http.get('/discreet').then( function(data) { obj.discreet = data } );
$http.get('/range').then( function(data) { obj.range = data } );

print(obj);

我手工制作的第二个:

var obj = { range: [1,2], discreet: [1,2] }
print(obj);

最佳答案

第一个只是在 xhr 响应返回之前被printed,所以对象在记录时是空的。

第二个在填充后记录。

关于javascript - chrome 开发人员工具控制台中对象之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12395416/

相关文章:

JSON 响应的 JavaScript 百分比计算

javascript - 在将 Canvas 转换为 html5 中的图像后,当前上传的图像未设置在确切位置

javascript - 滚动触发后运行 .animate() 一次

javascript - 在 Chrome 中生成下载时出现网络错误

css -::在浏览器中选择背景颜色和颜色渲染

javascript - 如何快速比较数组中的所有元素

javascript - ReactJS 将对象数组渲染到列表中会出现错误

javascript - 如何从 defaultProps 迁移到默认参数

html - 为什么 chrome 以这种方式呈现这个 CSS

javascript - 循环遍历对象项