首页 > 解决方案 > 放置非公开函数 AMD 的正确位置

问题描述

我有一个用例,公开公开的函数将调用 AMD 模块中的另一个非公开公开的函数。将函数放在返回之外(outsideReturnPrivate)还是返回内部(insideReturnPrivate)更好,为什么?

// libFile.js
define(function() {
    'use strict';
    var outsideReturnPrivate = function(test) {}; //Is this better?
    return function () {
        var insideReturnPrivate = function(test) {}, //Is this better?
            insideReturnPublic = function(test) {
                // which is better and why?
                // var example = insideReturnPrivate(test);
                // var example = outsideReturnPrivate(test);
                // return example;
            };
        return {
            insideReturnPublic: insideReturnPublic
        };
    }
});
// consumer
var example = require('libFile.js'),
    test = 'test',
    result = example.insideReturnPublic(test);

编辑:将私有函数更改为非公开暴露的 AMD 模块

编辑 2:为示例增加了更多清晰度

标签: javascriptfunctionscopeamd

解决方案


推荐阅读