将数组和其他变量一起转换为JSON

Adu*_*Rao 1 javascript arrays json

我有一个数组和2个这样的变量

var data = ['12','23', '45'];
var location = 'school'
var details = 'student';
Run Code Online (Sandbox Code Playgroud)

我想将此转换为json,如下所示

{
"School Details":[
     {"data":"12", "location":"school", "details":"student"}, 
     {"data":"23", "location":"school", "details":"student"},
     {"data":"45", "location":"school", "details":"student"}
]
}
Run Code Online (Sandbox Code Playgroud)

请注意:数据数组的值是动态的,可能会有所不同.但是,变量"location"和"details"将始终保持不变.我需要不断地将此静态值插入json中的动态数组值.

有谁知道我怎么能做到这一点?这有点复杂的情况.

Jar*_*a X 5

使用array #map将数据中的每个值映射到所需的对象

使用JSON.stringify根据需要将生成的对象转换为JSON字符串

var data = ['12','23', '45'];
var loc = 'school'
var details = 'student';
var object = { "School Details": data.map(function(item) {
        return { data: item, location:loc, details:details };
    })
};
var json = JSON.stringify(object);
console.log(json);
Run Code Online (Sandbox Code Playgroud)

注意改为var location,var loc因为var location在全局范围内使用会在浏览器中弄乱