Javascript 声明具有复杂 JSON 格式的变量

Javascript declaring a variable with complex JSON format

我是 javascript 的新手。 我正在尝试声明一个包含字符串和嵌套数组的变量。 前任:- 我需要一个变量, 数组(表名、字段和每个字段的多个注释)。

这是我的代码,

var data = [ {tableName : String, [{fieldName : String, [comments:String]}] } ]

这不起作用,请帮帮我。

表示为 [ value1, value2 ] 的数组只能包含值。

对象,表示为 { key1: value1, key2: value2 },只有键值对。

多行写出来更容易看出问题:

var data = [
   { //we're in an object
      tableName: "some-string",
      //this next value doesn't have an associated key
      [
         {  //we're in an object
             fieldName: "some-other-string",
             //this next value doesn't have an associated key
             [ 
                 comments: "some-comments-string" //we're in an array, so key-value pairs don't work.
             ]
         }
      ]
   }
];

我强烈推荐某种静态分析器,如 eslint,以帮助发现这些类型的问题。你可能打算做这样的事情(但问题没有说清楚):

var data = [
   { 
      tableName: "some-table-name",
      fields: [
         {  
             fieldName: "some-field-name",                 
             comments: [ 
                 "some-comment-1",
                 "some-comment-2"
             ]
         }
      ]
   }
];

如果您对 javascript 中数组和对象之间的区别感到困惑,请尝试此处:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object