Struktur data dikembalikan oleh d3.csvParse
Di d3.js, fungsi csvParse bekerja seperti:
d3.csvParse("foo,bar\n1,2\n2,3");
// [{foo: "1", bar: "2"}, {foo: "2", bar:"3"}, columns: ["foo", "bar"]]
T1 : Apa nama struktur dari data yang dikembalikan? terutama properti "kolom"?
Di luar d3.js, jika saya lakukan
var data = [{foo: "1", bar: "2"}, {foo: "2", bar:"3"}, columns: ["foo", "bar"]]
//uncaught syntaxerror unexpected token ':'
Q2 : Mengapa terjadi kesalahan? Bagaimana cara berkeliling?
Jawaban
Output yang Anda lihat hanyalah array JavaScript biasa dan columnshanyalah properti dari array itu. Dalam JavaScript, array dapat memiliki properti.
Jika Anda melihat kode sumbernya , Anda akan melihat ini:
var rows = []
Lalu:
rows.columns = columns || [];
Berikut adalah contoh yang sangat mendasar:
const arr = [1, 2, 3, 4, 5];
arr.columns = "foo";
console.log(arr)
Lihat konsol browser Anda (bukan yang cuplikannya), Anda akan melihat ini (di Chrome dan Firefox, tetapi tidak di Safari):
[1, 2, 3, 4, 5, columns: "foo"]
Mengenai kesalahan Anda ...
// token tak terduga kesalahan sintaks yang tidak tertangkap ':'
... perlu diingat bahwa itu hanya keluaran di konsol, itu bukan notasi literal array yang valid.