好程序员教程分享Javascript设计模式

简介:   好程序员教程分享Javascript设计模式方法一 对象字面量表示法  在对象字面量表示法中,一个对象被描述为一组包含在大括号中,以逗号分隔的 name/value 对。对象内的名称可以是字符串或标识符,后面跟着一个冒号。

  好程序员教程分享Javascript设计模式
方法一 对象字面量表示法
  在对象字面量表示法中,一个对象被描述为一组包含在大括号中,以逗号分隔的 name/value 对。对象内的名称可以是字符串或标识符,后面跟着一个冒号。对象中最后一个 name/value 对不加逗号,否则会出错。

  /**
1.

  * 使用字面量表示法定义模块


2.

  */


3.

  var myModule = {


4.

  myProperty: "someValue",


5.

  myConfig: {


6.

  useCaching: true,


7.

  language: "en"


8.

  },


9.

  myMethod: function () {


10.

  console.log("the first method");


11.

  },


12.

  myMethod2: function () {


13.

  console.log("the second method");


14.

  },


15.

  };

  console.log(myModule.myProperty); // someValue
1.

  console.log(myModule.myConfig); // {useCaching: true, language: 'en'}


2.

  console.log(myModule.myConfig.useCaching); // true


3.

  myModule.myMethod(); // the first method


4.

  myModule.myMethod2(); // the second method

  方法二 Module模式
  Module模式使用闭包封装“私有”状态和组织。它提供了一种包装混合公有/私有方法和变量的方式
  ,防止其污染全局命名空间,防止其泄露到全局作用域。通过该模式,只需返回一个公有API,而其他的一切则都维持在私有闭包里。
  /**
1.

  * Module方法定义


2.

  */


3.

  var myNameSpace = (function () {


4.

  // 私有变量


5.

  var myPrivateVar = 0;


6.

  // 私有函数


7.

  var myPrivateMethod = function (foo) {


8.

  console.log(foo);


9.

  };


10.

  // 公有API


11.

  return {


12.

  // 公有变量


13.

  myPublicVar: "foo",


14.

  // 公有方法


15.

  myPublicFunction: function (bar) {


16.

  // 操作私有变量


17.

  myPrivateVar ++;


18.

  // 调用私有函数


19.

  myPrivateMethod(bar);


20.

  },


21.

  // 公有方法二


22.

  myPublicFunction2: function () {


23.

  console.log("success");


24.

  }


25.

  };


26.

  }) ();

  console.log(myNameSpace.myPrivateVar); // undefined
1.
2.

  console.log(myNameSpace.myPrivateVar); // undefined


3.

  console.log(myNameSpace.myPublicVar); // foo


4.

  console.log(myNameSpace.myPublicFunction); // Function


5.

  myNameSpace.myPublicFunction2(); // success


6.

  myNameSpace.myPublicFunction("i am first"); // i am first

相关文章
|
1月前
|
Web App开发 JavaScript 前端开发
2024年5月node.js安装(winmac系统)保姆级教程
本篇博客为2024年5月版Node.js安装教程,适用于Windows和Mac系统。作者是一名熟悉JavaScript与Vue的大一学生,分享了Node.js的基本介绍、下载链接及简单安装步骤。安装完成后,通过终端命令`node -v`验证版本即可确认安装成功。欢迎关注作者,获取更多技术文章。
32 2
2024年5月node.js安装(winmac系统)保姆级教程
|
25天前
|
设计模式 Java Kotlin
Kotlin教程笔记(56) - 改良设计模式 - 装饰者模式
Kotlin教程笔记(56) - 改良设计模式 - 装饰者模式
37 2
|
25天前
|
设计模式 安全 Java
Kotlin教程笔记(57) - 改良设计模式 - 单例模式
Kotlin教程笔记(57) - 改良设计模式 - 单例模式
25 2
|
1月前
|
设计模式 Java Kotlin
Kotlin教程笔记(54) - 改良设计模式 - 迭代器模式
Kotlin教程笔记(54) - 改良设计模式 - 迭代器模式
43 2
|
1月前
|
设计模式 Java API
Kotlin教程笔记(50) - 改良设计模式 - 工厂模式
Kotlin教程笔记(50) - 改良设计模式 - 工厂模式
41 2
|
1月前
|
设计模式 算法 Kotlin
Kotlin教程笔记(53) - 改良设计模式 - 策略模式
Kotlin教程笔记(53) - 改良设计模式 - 策略模式
45 1
|
1月前
|
设计模式 监控 Java
Kotlin教程笔记(52) - 改良设计模式 - 观察者模式
Kotlin教程笔记(52) - 改良设计模式 - 观察者模式
37 1
|
1月前
|
设计模式 前端开发 JavaScript
JavaScript设计模式及其在实战中的应用,涵盖单例、工厂、观察者、装饰器和策略模式
本文深入探讨了JavaScript设计模式及其在实战中的应用,涵盖单例、工厂、观察者、装饰器和策略模式,结合电商网站案例,展示了设计模式如何提升代码的可维护性、扩展性和可读性,强调了其在前端开发中的重要性。
34 2
|
1月前
|
设计模式 安全 Java
Kotlin教程笔记(57) - 改良设计模式 - 单例模式
Kotlin教程笔记(57) - 改良设计模式 - 单例模式
|
1月前
|
设计模式 Java Kotlin
Kotlin教程笔记(56) - 改良设计模式 - 装饰者模式
Kotlin教程笔记(56) - 改良设计模式 - 装饰者模式