Javascript 从变量向json插入数据

Javascript 从变量向json插入数据,javascript,json,Javascript,Json,我使用以下代码将数据插入json: categories: [ 'Tokyo', 'Jakarta', 'New York', 'Seoul', 'Manila', 'Mumbai', 'Sao Paulo', 'Mexico City',

我使用以下代码将数据插入json:

categories: [
                'Tokyo',
                'Jakarta',
                'New York',
                'Seoul',
                'Manila',
                'Mumbai',
                'Sao Paulo',
                'Mexico City',
                'Dehli',
                'Osaka',
                'Cairo',
                'Kolkata',
                'Los Angeles',
                'Shanghai',
                'Moscow',
                'Beijing',
                'Buenos Aires',
                'Guangzhou',
                'Shenzhen',
                'Istanbul'
            ],
它可以工作,但我想将此数据放入数组或字符串变量中,如下所示:

var data = Array('Tokyo',
                'Jakarta',
                'New York',
                'Seoul',
                'Manila',
                'Mumbai',
                'Sao Paulo',
                'Mexico City',
                'Dehli',
                'Osaka',
                'Cairo',
                'Kolkata',
                'Los Angeles',
                'Shanghai',
                'Moscow',
                'Beijing',
                'Buenos Aires',
                'Guangzhou',
                'Shenzhen',
                'Istanbul');
categories: [data],
categories : ['firstElement', 'secondElement'];
var data = ['Tokyo', 'Jakarta',...];
var yourObject = {categories: new Array('Tokyo', ...)};
但是,它不起作用。你能帮助我吗?
谢谢。

答案是,第一部分的工作原理正是您在第二部分中所描述的。所以它已经起作用了

指定一个如下所示的变量:

var data = Array('Tokyo',
                'Jakarta',
                'New York',
                'Seoul',
                'Manila',
                'Mumbai',
                'Sao Paulo',
                'Mexico City',
                'Dehli',
                'Osaka',
                'Cairo',
                'Kolkata',
                'Los Angeles',
                'Shanghai',
                'Moscow',
                'Beijing',
                'Buenos Aires',
                'Guangzhou',
                'Shenzhen',
                'Istanbul');
categories: [data],
categories : ['firstElement', 'secondElement'];
var data = ['Tokyo', 'Jakarta',...];
var yourObject = {categories: new Array('Tokyo', ...)};
生成包含数组对象的json字段类别。例如,您可以使用
类别[0]
访问“firstElement”

完全一样,就像:

var categoties = new Array();
categories.push('firstElement');
categories.push('secondElement');
第二次尝试无效,因为无法在构造函数
新数组(…)
中提供数组值。如果使用
new Array()
实例化它,则可以使用
.push('value')
向数组中添加元素。

var categories=[];
var categories = [];

var data = ['Tokyo',
            'Jakarta',
            'New York',
            'Seoul',
            'Manila',
            'Mumbai',
            'Sao Paulo',
            'Mexico City',
            'Dehli',
            'Osaka',
            'Cairo',
            'Kolkata',
            'Los Angeles',
            'Shanghai',
            'Moscow',
            'Beijing',
            'Buenos Aires',
            'Guangzhou',
            'Shenzhen',
            'Istanbul'];

for (var i = 0; i < data.length; i++) {
  categories.push(data[i]);
}
var数据=[‘东京’, “雅加达”, “纽约”, "汉城",, “马尼拉”, “孟买”, “圣保罗”, “墨西哥城”, "德里",, "大阪",, “开罗”, “加尔各答”, “洛杉矶”, "上海",, “莫斯科”, "北京",, “布宜诺斯艾利斯”, "广州",, "深圳",, “伊斯坦布尔”]; 对于(变量i=0;i
已是作为对象一部分的数组。如果要将其作为单独的变量,请按如下方式创建:

var data = Array('Tokyo',
                'Jakarta',
                'New York',
                'Seoul',
                'Manila',
                'Mumbai',
                'Sao Paulo',
                'Mexico City',
                'Dehli',
                'Osaka',
                'Cairo',
                'Kolkata',
                'Los Angeles',
                'Shanghai',
                'Moscow',
                'Beijing',
                'Buenos Aires',
                'Guangzhou',
                'Shenzhen',
                'Istanbul');
categories: [data],
categories : ['firstElement', 'secondElement'];
var data = ['Tokyo', 'Jakarta',...];
var yourObject = {categories: new Array('Tokyo', ...)};
并将其添加到对象中

var yourObject = {categories: data};
你甚至可以做这样的事情:

var data = Array('Tokyo',
                'Jakarta',
                'New York',
                'Seoul',
                'Manila',
                'Mumbai',
                'Sao Paulo',
                'Mexico City',
                'Dehli',
                'Osaka',
                'Cairo',
                'Kolkata',
                'Los Angeles',
                'Shanghai',
                'Moscow',
                'Beijing',
                'Buenos Aires',
                'Guangzhou',
                'Shenzhen',
                'Istanbul');
categories: [data],
categories : ['firstElement', 'secondElement'];
var data = ['Tokyo', 'Jakarta',...];
var yourObject = {categories: new Array('Tokyo', ...)};
但请使用括号表示法

提示:您正在创建一个“对象文字”,而不是JSON对象。JSON只是对象文本的一个子集。阅读更多

应该是

var data = ['Tokyo','Jakarta','New York','Seoul','Manila','Mumbai','Sao Paulo','Mexico City','Dehli','Osaka','Cairo','Kolkata','Los Angeles','Shanghai','Moscow','Beijing','Buenos Aires','Guangzhou','Shenzhen','Istanbul'];

categories:data
(没有
[]
)不起作用?哦,是的,是的,谢谢这就是你的错误吗?这段代码起作用了:
categories:[data],
我想OP只是想在他的代码的另一部分初始化数组,并在他的JSON对象中调用它…@hereandnow 78对不起,但问题也不是那么清楚!