当前位置: 首页 > 面试题库 >

JavaScript模块模式示例[关闭]

上官淮晨
2023-03-14
问题内容

我找不到任何可访问的示例来说明如何将两个(或多个)不同的模块连接在一起一起工作。

因此,我想问一下是否有人有时间编写示例来解释模块如何协同工作。


问题答案:

为了采用模块化设计模式,您需要首先了解以下概念:

立即调用的函数表达式(IIFE):

(function() {
      // Your code goes here 
}());

您可以通过两种方式使用这些功能。1.函数声明2.函数表达式。

这里使用函数表达式。

什么是名称空间?现在,如果我们将名称空间添加到上面的代码中,那么

var anoyn = (function() {
}());

JS中的闭包是什么?

这意味着,如果我们在任何函数范围内/在另一个函数内声明任何函数(在JS中,我们可以在另一个函数内声明一个函数!),则它将始终计入该函数范围。这意味着将始终读取外部函数中的任何变量。它不会读取具有相同名称的全局变量(如果有)。这也是使用模块化设计模式避免命名冲突的目标之一。

var scope = "I am global";
function whatismyscope() {
    var scope = "I am just a local";
    function func() {return scope;}
    return func;
}
whatismyscope()()

现在,我们将应用我上面提到的三个概念来定义我们的第一个模块化设计模式:

var modularpattern = (function() {
    // your module code goes here
    var sum = 0 ;

    return {
        add:function() {
            sum = sum + 1;
            return sum;
        },
        reset:function() {
            return sum = 0;    
        }  
    }   
}());
alert(modularpattern.add());    // alerts: 1
alert(modularpattern.add());    // alerts: 2
alert(modularpattern.reset());  // alerts: 0

目的是隐藏外界的可变可访问性。

希望这可以帮助。祝好运。



 类似资料:
  • 本文向大家介绍JavaScript模块模式实例详解,包括了JavaScript模块模式实例详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JavaScript模块模式。分享给大家供大家参考,具体如下: 在JS中没有Class的概念,那么如何体现Object的Public和Private属性呢,答案就是模块模式(Module Pattern)。 JS中有一个显著的特性: 匿名函数(ano

  • 问题内容: 我最近正在读《 学习JavaScript设计模式》 这本书。我没有得到的是模块模式和显示模块模式之间的区别。我觉得他们是同一回事。有人可以举一个例子吗? 问题答案: 至少有三种不同的方法来实现模块模式,但是显示模块模式是唯一具有正式名称的模块模式后代。 基本模块模式 模块模式必须满足以下条件: 私有成员住在封闭中。 公共成员暴露在返回对象中。 但是这个定义有很多歧义。通过以不同方式解决

  • 本文向大家介绍javascript设计模式之module(模块)模式,包括了javascript设计模式之module(模块)模式的使用技巧和注意事项,需要的朋友参考一下 模块是任何强大应用程序中不可或缺的一部分,它通常能帮助我们清晰地分离和组织项目中的代码单元。 js中实现模块的方法:  1.对象字面量表示法  2.Module模式  3.AMD模块  4.CommonJS模块  5.ECMAS

  • 问题内容: 假设我有一个函数,并且正在主JavaScript文件中调用该函数。 这种模式会使事情有所不同吗?谁能告诉我这种模式的基本示例? 问题答案: 一个小例子: 在匿名函数中启动,该匿名函数被赋予一个值,并且对该函数是私有的。函数返回的是带有属性和属性的对象常量,它是对的引用。在使用私有变量。这一切都可以通过使用闭包来完成(该函数范围内的所有内容都可以被该同一函数中的其他所有内容引用)。 显示

  • 问题内容: 我只是想查找Martin Fowler的域模型模式的一些示例,但我找不到。 从我在Internet Domain Model上发现的内容来看,只是在类中添加了一些“逻辑”方法。例如 我理解正确吗?如果不是这样,我将不胜感激地举一个域模型模式用法的小例子。 问题答案: 我理解正确吗?如果没有,我将举一个例子。 大致上是。 对于Martin Fowler而言, 领域模型是领域的对象模型,其

  • 本文向大家介绍如何理解JavaScript模块模式?,包括了如何理解JavaScript模块模式?的使用技巧和注意事项,需要的朋友参考一下 JavaScript本机不支持类,因此使用Module模式。这是为了将公共,私有方法和变量存储在单个对象中。为了使用和理解它,我们将解决匿名关闭问题,以显示由于未达到18岁年龄标准而导致的选民资格丧失。 示例 您可以尝试运行以下代码来了解JavaScript模