Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从json读取文件返回值_Javascript_Json - Fatal编程技术网

Javascript 从json读取文件返回值

Javascript 从json读取文件返回值,javascript,json,Javascript,Json,因此,我正在尝试将这个json数据从这个函数中获取到另一个函数中的变量,但我不确定具体如何实现返回方法不起作用我被建议使用承诺或异步方式,但我不太确定如何从函数中返回承诺,并在读取json数据后解析它 function cycle_Profiles(){ 常数fs=要求(“fs”); 返回新承诺((解决、拒绝)=>{ fs.readFile(“src/data/profileInfo.json”,函数(err,data\u数组){ 如果(错误){ //如果出现错误,请拒绝 拒绝(错误); } v

因此,我正在尝试将这个json数据从这个函数中获取到另一个函数中的变量,但我不确定具体如何实现返回方法不起作用我被建议使用承诺或异步方式,但我不太确定如何从函数中返回承诺,并在读取json数据后解析它

function cycle_Profiles(){
常数fs=要求(“fs”);
返回新承诺((解决、拒绝)=>{
fs.readFile(“src/data/profileInfo.json”,函数(err,data\u数组){
如果(错误){
//如果出现错误,请拒绝
拒绝(错误);
}
var json=json.parse(数据数组);
//一旦你得到数据,就解决问题
解析(json);
});
});
}
调用函数时使用
async/await
then/catch

cycle_Profiles()
.then(json=>console.log(json))
.catch(err=>alert(err));//警惕这里
profile\u data\u array=JSON.parse(profile\u数据)


这是我最后使用的修复,但上面的注释也很好

您可以直接导入json文件,而无需使用
fs.readFile
。const data=require('./data/profileInfo.json');调用时应该是cycle_Profiles()。然后(json=>console.log(json)).catch(err=>alert(err));修正了,谢谢你的指点!
function cycle_Profiles(){
  const fs = require('fs')
  fs.readFile('src/data/profileInfo.json',function(err,data_array){
    if(err){
    alert(err);
   }
  var json = JSON.parse(data_array);
  //returns the JSON array of profiles
  return json;
 });
}
const profile_data = fs.readFileSync(__dirname + '/data/profileInfo.json',(err,data)=>{});