《JavaScript面向对象编程指南》读书笔记①

概述

JavaScript快忘完了,想看一本专业书拾遗,所以看了这本《JavaScript面向对象编程指南》

个人觉得这本书讲的很透彻很易懂,一些原来有疑惑的地方在这本书里面豁然开朗,看起来非常爽

现在我只记录一下我看这本书记录下的一些东西。那些简单的知识我没有记录,我只记录几个容易遗漏的或者精彩的知识点,以后再看也可当做拾遗之用

记录

  1. 对象,方法,属性和类的通俗解释:对象往往是用名词来表示的(也被称为实例);方法一般都是些动词;属性值则往往是一些形容词;类就是相似对象的共同特征。
  2. 什么是接口?以MP3播放器为例,如果MP3播放器是一个对象,那么作为该对象的用户,我们无疑需要一些类似于像按钮,显示屏这样的工作接口。这些接口能帮助我们使用该对象(如播放歌曲之类的)。至于它们内部是如何工作的,我们并不清楚。
  3. 所谓XX的初始化,实际上指的是XX首次(或者最初)被赋值或使用的时机。
  4. 我们可以将2e+3理解为将数字2的小数点向右移三位,同理2e-3也就能被理解为是将数字2的小数点左移三位。
  5. \u后面的字符将会被视为Unicode码。
  6. 使用双重取反操作可以很容易的将任何值转换为等效的布尔值。
  7. var mynumber=mynumber || 10
  8. 代码的操作符,关键字前后要加空格,为了美观。
  9. 如何确定一个输入值是否是一个可以参与算术运算的数组?用isNaN()
  10. eval()会将其输入字符串当做JavaScript代码来执行。
  11. var a = 123; function f() {alert(a); var a = 1; alert(a);} f();会显示什么?
  12. 当我们将函数A传递给函数B,并由B来执行A时,A就成了一个回调函数。也就是说,回调函数就是当做参数使用的函数。(回调函数可参见《JavaScript面向对象编程指南》的第65页,非常精彩。)
  13. 自调匿名函数的好处在于这样不会产生任何全局变量。
  14. 有没有函数能够在每次调用的时候重写自己,然后每次调用的时候更新自己?有!利用能够返回函数的函数!(参见《JavaScript面向对象编程指南》的第69页,非常精彩。)
  15. 如果对象的属性名不符合JavaScript中的变量命名规则,就必须对其施加一对引号。
  16. 哈希表:以字符串为键值的关联型数组。
  17. 依照惯例,我们应该将构造器函数的首字母大写,一遍显著地区别于其他一般函数。
  18. Function构造器,eval()setTimeout()都会以字符串的形式通过JavaScript的代码检查。
  19. Function对象也有一个length属性,用于记录该函数所拥有的参数数量;还有一个caller属性,会返回一个调用该函数对象的外层函数引用。
  20. arguments属性有一个callee属性,它引用的是当前被调用的函数对象。
  21. Number对象本身有5个内置属性和3个内置方法。
  22. 基本类型的字符串不是字符串对象;基本类型的数字不是数字对象。
  23. 正则表达式的回调式替换
  24. function f() {function c() {return this;} return c();} var o = new f();其中this指向的是谁?(window
  25. 路很长,永远也没有终点,但是放弃只是一刹那的时间!共勉!

原文地址:https://www.cnblogs.com/yangzhou33/p/8407404.html

时间: 2024-11-14 15:11:20

《JavaScript面向对象编程指南》读书笔记①的相关文章

程序员修炼之道-读书笔记

在<程序员修炼之道>一书中,Dave和Andy告诉我们以一种我们能够遵循的方式编程.本书中提出了许多著名的哲学理论,总结如下: 不要容忍破窗户 当一个街区的某个窗户破碎,而且长时间没人修理时,那么其他窗户也会相继破碎,从而整个街区更甚整个城市都会被侵蚀.这就是有名的"破窗户理论".做软件也如此,如果出现问题而不及时修正,那么整个软件就会随之恶化.所以,不能容忍破窗户,没发现一个bug就得及时改正.即使没有足够的时间去修理,也要用木板钉住,将BUG代码注释,采取这些行动阻止进

程序员修炼之道-读书笔记续

投资知识财产       我们喜欢把程序员所知道的关于计算机技术和经验视为他们的知识资产,你的资产是有时效的资产,会随着新技术,语言和环境的出现而变得过时. 多交流且会交流       在与他人交流时,一定要了解听众,他们对你讲的什么感兴趣,他们想要什么.遇到程序bug时,不要一味的职责,而是修正问题,解决问题. 维持正交性        正交就是两个事物中一个发生变化,对另一个无影响,这就是所谓的正交性.正交的好处有两个,一个是提高生存率,另一个则是降低风险.让代码维持正交性,可以消除无关事物

《程序员修炼之道》笔记(一)

这几天开始看<程序员修炼之道>,也许不少人看了书的标题,第一时间会觉得这是鸡汤一类的书.但至少以我自己的感受来看,这是很棒的书,现代人文主义不是提倡自我意识嘛,自己感觉好的就是好的.况且人家也是经过了时间和口碑的双重考验的,真心值得好好阅读. 作者在再版的序中写道: 写完<程序员修炼之道>至今已有十年.在这十年中,软件产业发生了翻天覆地的变化.--从表面上看,软件世界似乎陷入了疯狂的状态.但如果你深入繁杂表象的背后,会发现变化其实并不大.1999年的那些通用开发原则,在2009年同

程序员修炼之道阅读笔记之二

在<程序员修炼之道>一书中,Dave和Andy将告诉我们怎样以一种我们能够遵循的方式编程.他们何以能这样聪明?他们不也是和其他程序员一样,专注于各种细节而已吗?答案是他们在做某件事情时,会把注意力投注在他们在做的事情上——然后他们会试着把它做得更好. 设想你在参加一个会议.或许你在想,这个会议没完没了,你还不如去写程序.而Dave和Andy会想,他们为什么在开会,他们想知道是否可以通过另外的方式取代会议,并决定是否可使某样事情自动化,以使开会的工作推后.然后他们就会这样去做. 这就是Dave和

程序员修炼之道---读书随笔1

终于开始读<程序员修炼之道>这本书了,初看这本书的名字,有点以前的道士修炼法术的意思,觉得很是好奇,作为一名程序员,该如何修炼我们自己呢? 这本书涵盖的主题从个人责任.职业发展,直到用于使代码保持灵活.并且易于改编和复用的各种架构技术.利用许多富有娱乐性的奇闻轶事.有思想性的例子 以及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱. 编程技术就是程序员的手艺,你的程序就是你的艺术品.时刻关注自己的技艺,保持热情.保持好奇,争取做到富有专长而又多才多艺.有人说过这样一句话:“

程序员修炼之道阅读笔记02

在<程序员修炼之道>这本书里,我也了解到了不一样的知识.对于前面一部分的阅读让我受益匪浅,也加深了我继续阅读下去的渴望.然而在对注重实效的途径这部分内容阅读的时候,我也发现很多东西令我把握不了,它出现了非常多的术语,这对于我这样的菜鸟来说,无意识非常致命的.所以我只能对这部分的内容加以了解,而不能完全理解与消化.下面就是我对所读部分的内容(注重实效的途径)做出的简单总结. 1.不要重复你自己. don't repeat yourself; 系统中的每一项知识都必须具有单一.无歧义.权威的表示:

程序员修炼之道阅读笔记之一

书中提到有关调试的问题: 读书的时候学习编程,觉得和其他人最不一样的地方在于两点,一是自己思考程序的流程,写下代码之前,知道代码将要(预期)执行的顺序逻辑,二是会调试代码,出现错误时不像一般人完全不知道该如何是好,而是去调试来寻找出错的原因.我相信,现在还是有不少工作了的程序员,不习惯去调试,他们期待的是自己的代码都是一次编写就能正确无误的执行,如果不行,那么别人大概可以帮忙解决.  一直以来,一直觉得,一个程序员的经验丰富情况很大程度依赖于他遇到的bug并解决的数量,所以一个人代码写的越多,解

《程序员修炼之道》笔记(三)

第四章 注重偏执的实效 "你不可能写出完美的软件",我们要把这句话视为生活的公理,并接受它.拥抱它. 但同时,有一些方法可以尽量把这个事实转变为有利条件 作者用开车来类比写程序:每个人都知道只有他们自己是地球上的好司机,于是我们防卫性地开车,小心谨慎以避免麻烦发生,预判意料之外的事,尽量不让自己陷入无法解救自己的境地.编码也类似,我们不断地与他人的代码结合--可能不符合我们的高标准的代码--并处理可能有效也可能无效的输入.所以,我们要防卫性地编程.使用断言检测坏数据,检查一致性并在数据

《程序员修炼之道》笔记(二)

第二章 注重实效的途径 1. 重复的危害 a) DRY-Don't Repeat Yourself.系统中的每一项知识都必须具有单一.无歧义.权威的表示. b) 重复是怎样发生的 Imposed Duplication强加的重复.开发者觉得他们无可选择-环境似乎要求重复. Inadvertent Duplication无意的重复.开发者没有意识到自己在重复信息. Impatient Duplication无耐心的重复.开发者偷懒,因为重复似乎更容易. Interdeveloper dumplic

《程序员修炼之道》笔记(八)

第八章 注重实效的项目 随着你的项目开动,我们需要从个体的哲学和编码问题转向讨论更大的.项目级的问题.我们将不深入项目管理的具体细节,而是要讨论能使项目成功或失败的几个关键区域. 1. 注重实效的团队 书中前面的内容都是帮助个体成为更好的程序员,这些方法在对团队来说仍然有效. a) 不要留破窗户.质量是一个团队的问题.最勤勉的开发者如果被派到不在乎质量的团队里,也会发现自己很难保持修正琐碎问题所需的热情.团队作为一个整体,不应该容忍破窗户--那些小小的.无人修正的不完美. b) 煮青蛙.在项目开