我需要从不同的javascript文件访问数据,并将其更改为字符串

我需要从不同的javascript文件访问数据,并将其更改为字符串,javascript,string,Javascript,String,我需要访问此格式的数据才能与Chart.js一起使用: var dataArrays = { id: 1, time : [1543855884861,1543855889279], parsetTimestamp: ["3 Dec 2018 17:51:24","3 Dec 2018 17:51:29"], temperature: [23.4,24.4], humidity: [38,40], light: [1000,1100], soil: [750,800]

我需要访问此格式的数据才能与Chart.js一起使用:

var dataArrays = {
  id: 1,
  time : [1543855884861,1543855889279],
  parsetTimestamp: ["3 Dec 2018 17:51:24","3 Dec 2018 17:51:29"],
  temperature: [23.4,24.4],
  humidity: [38,40],
  light: [1000,1100],
  soil: [750,800],
  fanIn: [1,0],
  fanOut: [0,1],
  ledIntensity: [1024,1024]
 }
我需要从不同的js文件获取数据,格式如下:

var dataArrays.time = [data1.time, data2.time];
var数据=[{
名称:'管',
时间:1546614557692,
温度:23,,
湿度:49,
灯光:1718,
土壤:1024,
法宁:0,,
扇出:0,
发光强度:1024
},
{
名称:'管',
时间:1546614557697,
温度:23,,
湿度:49,
灯光:1721,
土壤:1024,
法宁:0,,
扇出:0,
发光强度:1024
}
]
我想我可以添加来自不同变量的数据,如下所示:

var dataArrays.time = [data1.time, data2.time];
但我没有两个变量,只有一个变量包含所有数据,它位于不同的文件中


有什么方法可以做到这一点吗?

嗯,您可以根据自己的需要创建变量。 例如:

然后你可以用它来表示你在问题中的表现

对于访问不同的javascript文件,如果这是在节点运行时,您可以使用
require
,如果不是,可能会对您有所帮助


希望有帮助

如果您只想合并数组的对象,可以使用
array.prototype.reduce
进行合并

只需迭代数组
数据中包含的对象的键,合并重复的键并将它们放入数组中,然后将其分配给累积的
合并的
对象

var数据=[{
名称:'管',
时间:1546614557692,
温度:23,,
湿度:49,
灯光:1718,
土壤:1024,
法宁:0,,
扇出:0,
发光强度:1024
},
{
名称:'管',
时间:1546614557697,
温度:23,,
湿度:49,
灯光:1721,
土壤:1024,
法宁:0,,
扇出:0,
发光强度:1024
}
]
var合并=数据减少((acc,ele)=>{
用于(输入ele){
acc[键]=acc[键]?acc[键].concat(ele[键]):[ele[键];
}
返回acc;
},{});

console.log(合并)
您可以使用reduce函数将
数据
数组组合成一个组合对象
数据数组

var res = {
    id: 1,
    time : [],
    parsetTimestamp: [],
    temperature: [],
    humidity: [],
    light: [],
    soil: [],
    fanIn: [],
    fanOut: [],
    ledIntensity: []
};
dataArray = data.reduce(function(res, cur) {
   res.id = 1,
   res.time.push(cur.time);
   res.temperature.push(cur.temparature);
   res.humidity.push(cur.humidity);
   // etc etc

   return res;  // have to return in reduce
} , res); // initial value

我已经注意到“id”和“name”之间存在差异,我需要使用变量数据中的“name”,我将在代码中修复它,因此您希望
数据数组中的对象属性值由
数据中的对象属性组成。谢谢,这很有效。我唯一的问题是,var数据存储在不同的文件中,由于我将收到的数据量很大,我不想将其重写,我可以以某种方式在该文件中引用它吗?我可能应该说的是,这些文件也在不同的文件夹中,一个在
源代码/fronded
中,另一个在
源代码/Server\u Backend
@DaanR中。这个答案可能会对您有所帮助,或者您也可以通过http将其作为JSON提供?以便前端代码可以对其进行解析: