悟透javascript读书笔记

1.undefined,null,0,""  这四个值转换为逻辑值时是false,其他无论简单类型值,对象或者函数转换过来都是true

2.如图

第一个是“声明了一个变量,给变量赋值(赋的是一个函数),然后又更改了变量的值

第二个是”声明了一个函数,定义里里面的规则,然后把这个名字的函数又声明了一遍,定义了不同的规则“

造成第二个alert成这样的原因是,一段程序执行的时候,会先把定义语句抓出来先执行,完了才去执行其他代码,所以这个函数被第二个定义给覆盖掉了。

所以,当函数被定义两遍时,后者会覆盖前者;

这也是javascript的预编译

时间: 2024-10-10 09:44:48

悟透javascript读书笔记的相关文章

Javascript代码执行过程-《悟透Javascript》笔记

本文摘录自李战老师<悟透Javascript>一书的部分章节,为适应博客发表作了一点点修改. 1) 预编译分析. JavaScript执行引擎将所有定义式函数直接创建为作用域上的函数变量,并将其值初始化为定义的函数代码逻辑,也就是为其建立了可调用的函数变量. “var”定义的变量也会在这一步中创建起来,初始值为undefined. 2) 开始解释执行代码. JavaScript 执行引擎并非一行一行地分析和执行程序,而是一段一段地分析执行的.而且,在同一段程序的分析执行中,定义式的函数语句会被

Javascript读书笔记:函数定义和函数调用

定义函数 使用function关键字来定义函数,分为两种形式: 声明式函数定义: function add(m,n) { alert(m+n); } 这种方式等同于构造一个Function类的实例的方式: var add = new Function("m", "n", "alert(m+n);"); Function类构造方法的最后一个参数为函数体:"alert(m+n);",前面的都是函数的形参,参数必须是字符串形式的:&

悟透JavaScript——学习心得

编程世界的两个基本元素:数据和代码. 数据天生文静,欲在保持:代码天生活泼,欲在改变. 面向对象的思想首次把数据和代码结合成统一体,并以一个简单的对象概念呈现给编程者. JavaScript中简单数据只有undefined.null.boolean.number和string五种,复杂数据只有object一种.代码只体现为function一种形式. 解析简单数据: undefined代表了一切未知的事物,啥也没有,无法想象,代码也就更无法处理了.注:typeof(undefined)返回值也是u

Javascript读书笔记:字符串常用方法

concat() 连接多个字符串,返回合并后的字符串. 1 var s1="a"; 2 var s2="b"; 3 var s3="c"; 4 5 console.log(s1.concat(s2,s3));//abc 数组中的concat():将参数添加为数组的元素,返回新的数组. 1 var arr = [1, 2, 3]; 2 console.log(arr.concat(4, 5));//[1,2,3,4,5] indexOf() 查找子

高性能javascript读书笔记(三.DOM 编程1)

第三章DOM Script DOM编程 读书笔记 访问和修改DOM元素 浏览器通常要求DOM实现和JavaScript保持相互独立. <!-- 例如IE中,被称为JScript的JavaScript实现位于库文件jscript.dll中,而DOM实现位于另一个库mshtml.dll(内 部代号Trident).这种分离技术允许其他技术和语言,如VBScript,受益于Trident所提供的DOM功能和渲染功能.Safari使用Webkit的WebCore处理DOM和渲染,具有一个分离的JavaS

数据结构与算法JavaScript 读书笔记

由于自己在对数组操作这块比较薄弱,然后经高人指点,需要好好的攻读一下这本书籍,原本想这个书名就比较高深,这下不好玩了.不过看着看着突然觉得讲的东西都比较基础.不过很多东西,平时还是没有注意到,故写出读书笔记和诸君共勉! 第二张 2.2.1 创建一个数组 创建数组的方式有?那种比较高效?原因是? 第一种模式 var nums = []; var numbers = [1,2,3,4,5];console.log(numbers.length)//5 第二种模式 var nums = new Arr

【读书笔记】悟透javascript

编程世界中只有数据和代码两种基本元素. javascript中的元素是很简洁的,简单数据只有 undefined, typeof(undefined)返回undefined,可以将undefined赋值给任何变量或者属性,但并不意味着清除了该变量,反而会因此多了一个属性. null,typeof(null)返回oobject,但null并非object,具有null值得变量也并非object boolean, Number,线性的事物,大小和次序分明.typeof(NaN)和typeof(inf

悟透JavaScript

From: 李战,http://www.cnblogs.com/leadzen/archive/2008/02/25/1073404.html 引子 编程世界里只存在两种基本元素,一个是数据,一个是代码.编程世界就是在数据和代码千丝万缕的纠缠中呈现出无限的生机和活力. 数据天生就是文静的,总想保持自己固有的本色:而代码却天生活泼,总想改变这个世界.    你看,数据代码间的关系与物质能量间的关系有着惊人的相似.数据也是有惯性的,如果没有代码来施加外力,她总保持自己原来的状态.而代码就象能量,他存

[已读]悟透JavaScript

这本书出的特别早,就第一部分内容还行,第一次看得时候觉得蛮有意思,讲禅的方式来讲javascript,作者造了一个"甘露模型"来实现继承,不过今天整理的时候,发现那些笔记都没多少可吸引的内容= =|||