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

标签 javascript private var object-literal

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

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 - AngularJs 将参数值传递给 Controller

javascript - 在不使用 jQuery 的情况下在页面加载时执行 JS

c - OpenMP Parallel 用于在 C 中进行调度

php - 如果 Var 为空,如何隐藏 div?

python - Python 中带有 pandas + statsmodels 的 VAR 模型

javascript - 如何更改 jQuery 元素内容

javascript - 如何在 Google Chrome 中使用自定义元素 v1 扩展 <form>?

javascript - Angular JS 分页

c++ - 将单个成员标记为私有(private)

c++ - 如何轻松公开我是 friend 的 C++ 类的所有私有(private)成员?