首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在JavaScript中公开一个方法

如何在JavaScript中公开一个方法
EN

Stack Overflow用户
提问于 2015-08-18 14:00:06
回答 1查看 3.9K关注 0票数 1

我有一个名为Grid的对象,我使用new来创建它的实例。我希望能够从外部调用它的方法。

这是(简化的)对象:

代码语言:javascript
复制
var Grid = function() {
    this.table = createTable();

    function createTable() {
        // ...
    };

    function setSelectedLine(line) { // this one should be public
        // ...
    };
};

var g = new Grid();
g.setSelectedLine(anyLine); // TypeError: g.setSelectedLine is not a function

我发现了其他有类似问题的主题,但它们使用的对象构造非常不同。难道不需要重写所有东西就可以将该方法公开吗?真正的物体实际上比那个要大。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-18 14:04:30

您可以将它添加到对象原型中:

代码语言:javascript
复制
var Grid = function() { .. };
Grid.prototype.methodName = function() { .. };

也可以将其作为属性添加到构造函数中。

代码语言:javascript
复制
var Grid = function() {
  this.methodName = function() { .. };
};

请注意difference between the two methods

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32074576

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档