Node.js – 模块导出静态variables
我试图导出一个模块,该模块应该存储给定信息的散列表,以便可以检查另一个访问该信息的调用是否存在于散列表中,如果find,则返回散列表中的值。
我无法获得导出的哈希表在整个应用程序中保持一致,作为单例/静态/全局variables。
这是我有:
var Randomize = { hashTable: [], randomize: function(rows) { var randomized = []; for(var i in rows) { //check if exists in hashtable, use values accordingly } return randomized; } }; module.exports = Randomize;
当我尝试访问它时:
var randomize = require('randomize'); /* ... */ console.log(randomize.randomize(rows))
它为每个实例创build一个新的散列表。 我怎样才能使它重用哈希表的同一个实例?
你的散列表可能在错误的范围内 – 可能会被每个require
破坏。 试试这个:
var hashTable = []; var Randomize = { hashTable: hashTable, randomize: function(rows) { var randomized = []; for(var i in rows) { //check if exists in hashtable, use values accordingly } return randomized; } }; module.exports = Randomize;