`
desert3
  • 浏览: 2164552 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

JavaScript语言精粹读书笔记- 继承

 
阅读更多
继承inheritance:在那些基于类的语言(比如java)中,继承提供了两个有用的服务。
一、它是代码重用的一种形式
二、它包含了一套类型系统的规范(无须显式类型转换)

JavaScript是一门弱类型的语言,从来不需要类型转换。对象的起源是无关紧要的。对于一个对象来说,重要的是它能做什么,而不是它从哪里来。
在基于类的语言中,对象是类的实例,并且类可以从另一个类继承。JavaScript是一门基于原型的语言,这意味着对象直接从其他对象继承

伪类
当一个函数对象被创建时,Function构造器产生的函数对象会运行类似这样的代码:
this.prototype = {constructor : this};
新函数对象被赋予一个prototype属性,其值是包含一个constructor属性且属性值为该新函数对象。该prototype对象是存放继承特征的地方。因为JavaScript语言没有提供一种方法去确定哪个函数打算用来做构造器的,所以每个函数都会得到一个prototype对象。constructor属性没有什么用,重要的是prototytpe对象。

对象说明符Object Specifiers
有时候,构造器要接受一大串参数。这可能是令人烦恼的,因为要记住参数的顺序可能非常困难。这种情况下,如果我们在编写构造器时,使其接受一个简单的对象说明符可能会更加友好。那个对象包含了将要构建的对象规格说明。
var myObject = maker(f, l, m, c, s)
var myObject = maker ({
first : f,
last : l,
state : s,
city : c
});
现在多个参数可以按任何顺序排列,如果构造器会聪明地使用默认值,一些参数可以忽略掉,并且代码也更容易阅读。

原型Prototypal
在一个纯粹的原型模式中,我们会摒弃类,转而专注于对象。基于原型的继承相比基于类的继承在概念上更为简单:一个新对象可以继承一个旧对象的属性。你通过构造一个有用的对象开始,接着可以构造更多和那个对象类似的对象。可以完全避免把一个应用拆解成一系列嵌套抽象类的分类过程。

函数化Functional
迄今为止,所看到的继承模式的一个弱点就是我们没法保护隐私。对象的所有属性都是可见的。我们没法得到私有变量和私有函数(伪装私有的模式:起一个古怪的名字,并且希望其他使用代码的用户假装看不到。)。幸运的是,我们有一个更好的选择,那就是模块模式的应用。

部件Parts
我们可以从一套部件中组合出对象来。
分享到:
评论

相关推荐

    JavaScript语言精粹完整版

    《JavaScript语言精粹》作为一本深入浅出讲解JavaScript编程语言的经典之作,对于想要提升自己JavaScript技能的开发者来说,无疑是一份宝贵的资源。本书由Douglas Crockford所著,他不仅是JSON格式的创始人,也是...

    JavaScript面向对象编程--继承.mht

    JavaScript面向对象编程--继承.mht,JavaScript面向对象编程--继承.mht,JavaScript面向对象编程--继承.mht,JavaScript面向对象编程--继承.mht

    JavaScript语言精粹 pdf

    《JavaScript语言精粹》作为一本经典的编程书籍,深入浅出地介绍了JavaScript这门语言的核心概念和技术要点,是每一个前端开发者乃至后端工程师都不容错过的读物。这本书由Douglas Crockford所著,他不仅是...

    JavaScript语言精粹--蝴蝶

    JavaScript语言精粹——蝴蝶 JavaScript,作为Web开发中的核心语言,是实现动态交互的重要工具。这篇文档《JavaScript语言精粹——蝴蝶》旨在深入探讨并解析JavaScript的精华部分,帮助开发者更好地理解和掌握这门...

    JavaScript语言精粹.修订版 Javascript:The Good Parts 中英 pdf

    "JavaScript语言精粹.修订版",即《Javascript: The Good Parts》,是由知名的计算机科学家Douglas Crockford所著,这本书深入探讨了JavaScript的核心概念和最佳实践,为开发者提供了宝贵的洞察力。 书中的内容主要...

    JavaScript语言精粹 中文版

    JavaScript语言精粹 中文版 共两部分

    JavaScript语言精粹pdf

    《JavaScript语言精粹》是一本深受开发者喜爱的经典书籍,它深入浅出地讲解了JavaScript的核心概念和最佳实践。这本书的中文高清PDF版本包含了详细的注解和书签,为读者提供了便利的学习路径。作为标签,"JavaScript...

    JavaScript语言精粹 中文高清PDF

    《JavaScript语言精粹》是一本深受开发者欢迎的权威书籍,旨在深入探讨JavaScript这门重要的编程语言,帮助初学者和有经验的程序员掌握其核心概念和最佳实践。这本书以中文高清PDF的形式提供,使得读者可以方便地...

    JavaScript语言精粹(修订版)

    "JavaScript语言精粹(修订版)"是一本深入探讨JavaScript编程精髓的书籍,旨在帮助开发者掌握其核心概念、最佳实践以及常见陷阱。这本书对初学者和经验丰富的开发者都具有很高的价值,能够提升对JavaScript的理解和...

    JavaScript语言精粹.pdf.zip

    这本书《JavaScript语言精粹》无疑是深入理解和掌握这门语言的重要参考资料。它旨在帮助开发者掌握JavaScript的核心概念,提高编程技能,并理解如何写出高效、可维护的代码。 《JavaScript语言精粹》可能会涵盖以下...

    JavaScript语言精粹_修订版.pdf

    JavaScript语言精粹_修订版.pdf

    JavaScript语言精粹 修订版 中文高清PDF

    《JavaScript语言精粹 修订版》是一本深受前端开发者喜爱的经典教材,专注于讲解JavaScript的核心概念和最佳实践。这本书深入浅出地介绍了JavaScript的精髓,帮助读者掌握这门强大的脚本语言,尤其对于前端开发人员...

    JavaScript语言精粹 修订版 pdf

    JavaScript语言精粹修订版pdf是许多朋友都在寻找的一款学习资料,在这里能够为您详细的介绍JS这门计算机语言,作者从语法、对象、函数、继承、数组、正则表达式、方法、样式和优美的特性这9 个方面来呈现这门语言...

Global site tag (gtag.js) - Google Analytics