美文网首页
javascript构造函数之稳妥构造函数

javascript构造函数之稳妥构造函数

作者: 刘翾 | 来源:发表于2017-11-08 21:16 被阅读42次

所谓稳妥对象, 指的是没有公共属性, 而且其方法也不引用this的对象。稳妥对象函数遵循与寄生构造函数类似的模式, 但有两点不同: 一是新创建对象的实例方法不引用this; 二是不使用new操作符调用构造函数。


最近在浏览博客时发现很多人好像理解错这个稳妥构造函数了, 这个函数与在《javascript 高级程序设计》中提到的其他构造函数的一大特点在于可以利用js作用域实现私有变量化


function Process (nameF) {
    var o = new Object();
    var name = nameF;//1
    o.sayName = function(){
        alert(name);//2
    };
    return o;
}

var friend = Process('Nick');
friend.sayName();  //"Nick"
console.log(friend.name);//undefined//3

注意: (以下3点)

1. 在稳妥构造函数中变量不能挂到要返回的对象o中

2. 在稳妥构造函数中的自定义函数操作元素时使用不要用this

3. 在函数外部使用稳妥构造函数时不用new。

相关文章

  • javascript构造函数之稳妥构造函数

    所谓稳妥对象, 指的是没有公共属性, 而且其方法也不引用this的对象。稳妥对象函数遵循与寄生构造函数类似的模式,...

  • 稳妥构造函数

    所谓稳妥对象,指的是没有公共属性,而且其方法也不引用this的对象.稳妥对象适合在一些安全的环境中( 这些环境会禁...

  • 前端面试题总结【37】:javascript对象的几种创建方式

    工厂模式 构造函数模式 原型模式 混合构造函数和原型模式 动态原型模式 寄生构造函数模式 稳妥构造函数模式 推荐:...

  • JavaScript 面向对象编程

    构造函数 JavaScript中的构造函数是创建对象时调用的函数,写法如下: 定义Person构造函数(默认构造函...

  • 第六章——创建对象

    一、寄生构造函数模式、工厂模式、稳妥构造函数模式的区别与联系 寄生构造函数模式(重写了构造函数的返回值): 工厂模...

  • 原型与原型链

    构造函数与原型 JavaScript 语言使用构造函数(constructor)作为对象的模板。所谓”构造函数”,...

  • 构造函数-js-高级程序设计-第六章笔记

    前言 理解对象 创建对象构造函数模式原型模式组合使用构造函数模式和原型模式动态原型模式寄生构造函数模式稳妥构造函数...

  • javaScript面向对象—构造函数,原型和原型链

    构造函数 什么是构造函数 在javaScript中,用new关键字来调用的函数,称为构造函数。一般将构造函数的首字...

  • 构造函数和原型对象

    javascript使用构造函数和原型对象来进行面向对象编程 构造函数 在 JavaScript 中,构造器其实就...

  • JavaScript OOP

    类 1. 工厂模式 2. 构造函数 3. 原型模式 4. 寄生构造函数 5. 动态原型函数 6. 稳妥构造函数 继...

网友评论

      本文标题:javascript构造函数之稳妥构造函数

      本文链接:https://www.haomeiwen.com/subject/kvqumxtx.html