我正在加载一个名为 D3 的库一些 CSV 文件,并对加载文件后返回的数据进行 console.log
处理,得到了以下结果:
d3.csv(..., function(data) {
console.log(data)
// this returns the following:
//"(6) [{…}, {…}, {…}, {…}, {…}, {…}, columns: Array(8)]"
})
现在这部分对我来说很奇怪:
(6) [{…}, {…}, {…}, {…}, {…}, {…}, columns: Array(8)]
这看起来像是一个数组的混合体(因为我可以做类似 var a = data[2]
的事情),但它也看起来像一个对象(因为我可以做类似 的事情) var a = data.columns
.
当我执行 typeof(data)
时,我知道它是一个对象,但我不知道如何构建一个也响应 []
语法的对象。 (或者一个数组,响应对象属性)
这样的结构是如何构建的?
最佳答案
数组只是一种对象。它们可以做任何对象可以做的事情。
var data = ["a", "b", "c"];
data.arbitaryProperty = "Hello, world";
console.log(typeof data);
console.log(data[0]);
console.log(data.arbitaryProperty);
关于javascript - 是否可以构建响应 [] 运算符的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48111567/