javascript - Javascript文字对象中的私有(private)变量

标签 javascript private var object-literal

如何在文字对象中声明私有(private) var?因为我有这个代码:

var foo = {

    self: null,

    init: function() {
        self = this;
        self.doStuff();
    },

    doStuff: function() {
        //stuff here
    }

}

这完美地工作,但如果我有一些对象,var“self”它将覆盖..显然它是一个全局变量..我不能在这个对象内使用受限词“var”..

我该如何解决这个问题,或者为每个对象创建一个命名空间?

谢谢!

最佳答案

您可以创建一个函数范围来隐藏变量:

var foo = (function() {
  var self = null
  return {
    init: ...,
    doStuff: ...
  };
})();

虽然不清楚 self 是什么应该在这里做,如何foo用来。

关于javascript - Javascript文字对象中的私有(private)变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8402448/

相关文章:

Javascript 闭包没有使用正确的值

javascript - 使用JavaScript添加表单字段..但在下面,而不是在一边?

javascript - 使用 Ract 作为前端时如何从 express 中渲染 HTML 文件?

c# - C# 中的访问修饰符

xcode - 如何访问另一个类中的变量?

c# - 您可以利用名为 `var` 的类的隐式类型变量吗?

javascript - 如何克服Selenium CSS仅父CSS选择器限制

javascript - jQuery切换不适用于我的页面

object - Dart 的私有(private)成员被曝光

javascript - 从派生(ES2019 私有(private)类)访问基类的 protected 字段