Javascript 如何遍历对象中的数组?

Javascript 如何遍历对象中的数组?,javascript,node.js,Javascript,Node.js,我有一个config.json文件: { "test": { "maths": [ "core", "core2" ] } } 在我的index.js中,我想访问对象“test”,并遍历每个数学元素 我对阵列还不熟悉,所以仍在试图弄清楚它们是如何工作的。这种方法有什么问题?(我知道它不起作用) 另外,正确的方法是什么?尝试将config.js更改为 module.exports = { "test": { "maths": [

我有一个config.json文件:

{
  "test": {
    "maths": [
      "core",
      "core2"
    ]
  }
}
在我的index.js中,我想访问对象“test”,并遍历每个数学元素

我对阵列还不熟悉,所以仍在试图弄清楚它们是如何工作的。这种方法有什么问题?(我知道它不起作用)


另外,正确的方法是什么?

尝试将config.js更改为

module.exports = {
  "test": {
    "maths": [
      "core",
      "core2"
    ]
  }
};
现在,您的模块没有导出任何内容

更新:如果您更喜欢.json,则此方法不会像.json那样工作。无法导出.json(但在节点中可能需要它,请参阅),它将.js文件作为模块使用。您还必须更改此部分:

require('./config.js') 
更新2:它与 index.js

config.json

{
  "test": {
    "maths": [
      "core",
      "core2"
    ]
  }
}

在my node v5.3.0中,要修复此问题,请将config.js文件重命名为config.json(出于命名约定)

更改:

var CONFIG = require('./config')
致:


原因是需要文件需要确切的文件名,包括扩展名。3可能的解决方案,请选择最适合您的解决方案:

  • config.js
    的文件扩展名更改为
    config.json
  • 改为读取文件并将其解析为JSON:
    var CONFIG=JSON.parse(require('fs').readFile('./CONFIG.js'))

  • 按照Anton的建议,将文件设置为导出JSON而不是普通JSON的模块


  • 您可以简单地使用JQuery方法getJSON将Json加载到Javascript中


    你可以检查这个答案;你错过分号了吗?在这种情况下分号不是问题。我收到以下错误:TypeError:无法读取undefinedDo的属性“Mathematics”您是否安装了node.js
    require
    不是本机函数,而是node.jsYes中定义的函数。所有这些都是正确设置的。对不起,我的意思是我的文件名为config.json(更正了问题)。这似乎解决不了任何问题
    {
      "test": {
        "maths": [
          "core",
          "core2"
        ]
      }
    }
    
    var CONFIG = require('./config')
    
    var CONFIG = require('./config.json')
    
    `$.getJSON( "config.json", function( data ) {
       console.log(data);
       var val = data.test.maths
       val.forEach(function (d) {
         console.log(d);
       })
     });`