如何在Javascript中创建全局变量函数

时间:2019-04-09 16:12:13

标签: javascript function variables

我想在脚本中的任何地方创建一个可访问的全局函数,该函数可以处理Graph对象-对其进行构造,更新等。

我做了一个功能:

function GraphFactory(){
            this.initNames = function(nodes) {
                nodeNames = nodes;
            }
            this.getNodeNames = function() {
                return nodeNames;
            }
            this.addNameToNodeNames = function(name) {
                nodeNames.push(name);
                return true;
            }
        }

然后,当我尝试使用

填充它时
 GraphFactory.initNames(['hello','boo'])

它说GraphFactory.initNames不是函数...

我该如何用节点名称填充该图形对象,然后使用GraphFactory.getNodeNames()获取它们的列表?

谢谢!

1 个答案:

答案 0 :(得分:2)

在名为nodeNames的类上设置一个属性,然后实例化该对象。

function GraphFactory(){
    this.nodeNames= [];
    this.initNames = function(nodes) {
        this.nodeNames = nodes;
    }
    this.getNodeNames = function() {
        return this.nodeNames;
    }
    this.addNameToNodeNames = function(name) {
        this.nodeNames.push(name);
        return true;
    }
}

let graphFactory = new GraphFactory();
graphFactory.initNames(['hello','boo'])
console.log(graphFactory.getNodeNames());