在Dojo中声明私有函数的安全方法

时间:2014-02-28 15:11:39

标签: javascript function dojo private

在Dojo中创建私有函数的模式?

Dojo文档主张使用_underscore将函数表示为私有,但这显然只是一种约定,并不实际创建私有函数,例如。

define([
   "dojo/_base/declare"
],
function (declare) {
   return declare(null, {

       getPrivateData: function () {
           _myPrivateFunction();
       },

       _myPrivateFunction: function () {
           return "Data from private function";
       }
   });
});

我在Dojo中查看了关于私有变量的SO问题,但没有一个反映我的要求。但是,this question的答案之一包括来自Dojo文档的示例,其中显示了如何创建私有类。

我的问题是,为什么不应该使用相同的模式来创建私有函数?例如

 define([
"dojo/_base/declare"
],
function (declare) {

    var myPrivateFunction = function() {
        return "Data from private function";
    };

    return declare(null, {

        getPrivateData: function () {
            myPrivateFunction();
        }
    });

});

0 个答案:

没有答案