javascript - 调用 'sibling' 函数

标签 javascript jquery angularjs

我有一些看起来像这样的代码

var viewService = function () {
   ...
   return {
      ...
      ,isAbsolute: function (view) { ... }
      ...
      ,removeAbsoluteViews: function () { ... }
      }
   };
};

我想做的是从 removeAbsoluteViews 调用 isAbsolute。当我尝试这样做时

if (isAbsolute(v) === false) { ... }

我收到一条错误消息,提示 isAbsolute 未定义。我该怎么做?

最佳答案

由于您返回一个对象,您可以使用 this 关键字:

if (this.isAbsolute(v) === false) { ... }

你也可以这样声明它(不用this关键字):

var viewService = function () {

  function isAbsolute (view) { ... }

  function removeAbsoluteViews () { 
    if (isAbsolute(v) === false) { ... }
  }

  ...

  return {
    isAbsolute: isAbsolute,
    removeAbsoluteViews: removeAbsoluteViews
  };
};

关于javascript - 调用 'sibling' 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24079924/

相关文章:

javascript - 找出 OnClick 事件的注册方法?

angularjs - Angular 错误 : Model is not of type `number`

javascript - 在没有对象包装器的情况下使用 Jquery $.grep 过滤对象数组

javascript - 带有 javascript 回调的 Jquery Click 事件被执行了不止一次

javascript - for循环不循环

javascript - 使用 AngularJS 获取属性值

javascript - 如何在 Angular.js 中实现组

javascript - Angularjs 2/4 使用 Complex formbuilder 进行表单验证

jquery 在 Canvas 元素上滑动菜单

jquery - 在 attr() 回调中执行函数?