用于Node js中的配置的JS vs JSON

时间:2016-04-26 11:09:23

标签: javascript node.js

我应该使用什么进行配置?

像KrakenJS这样的模块高度支持通过JSON进行配置,博客https://blog.risingstack.com/node-js-best-practices-part-2/表示JS应该优先于JSON。

您能告诉我他们的不同之处以及管理它们的最佳方式是什么?

1 个答案:

答案 0 :(得分:13)

你应该接受这两个。

JavaScript 配置文件有许多优点:

  1. 当然可编程,允许有趣的扩展和生成的部分
  2. 更轻,更难以打字(少引号,尾随逗号等)
  3. 让您拥有评论(JSON的一大限制,here's why they're needed
  4. 更多值类型(NaN& infinites,例如正则表达式)
  5. 在这种情况下,JS文件导出一个普通的JS对象,类似于解析的JSON文件所带来的。

    JSON 更受社会接受,因为JS通常不被视为配置格式。让人们使用JSON会阻止“JS is for logic”无聊辩论,如果人们对它感到满意就没有问题。

    接受两种格式:

    Here's如何阅读JS / JSON配置:

    try {
        config = require('./config.js');
    } catch(err) {
        if (err.code==='MODULE_NOT_FOUND') {
            config = require('./config.json');
        } else {
            console.error('config.js loading failed');
            throw err;
        }
    }
    

    在任何情况下,JSON配置文件只需在其前面加上

    即可转换为JS文件
    module.exports =
    

    所以没有人以这种格式锁定。