《JavaScript高级程序设计 第3版》-学习笔记-2

简介: P31-P82页 1、相等不相等与全等不全等 相等不相等:先转换后比较。对于只有一个对象,调用valueOf方法得到基本类型值再按基本类型转换;如果两个都是对象,则比较他们是否是同一个对象(引用或指针值比较);null与undefined是相等的,至少有一个为NaN则相等为false,不相等为true; 全等不全等:只比较。

P31-P82页

1、相等不相等与全等不全等

相等不相等:先转换后比较。对于只有一个对象,调用valueOf方法得到基本类型值再按基本类型转换;如果两个都是对象,则比较他们是否是同一个对象(引用或指针值比较);null与undefined是相等的,至少有一个为NaN则相等为false,不相等为true;

全等不全等:只比较。只在两个操作数未经转换就相等的情况下返回true,特别的,null与undefined不全等,因为连类型都不同

2、未指定返回值类型的函数返回的是一个特殊的值-undefined

3、只能给引用类型动态的添加属性

1 obj = new Object();
2 obj.name = "lisimi";/*动态添加name属性*/

4、复制变量和传递参数都是值复制、值传递,对于基本数据类型,复制或传递是将值的副本放到新的变量里,对于引用数据类型,其实也是值传递,不过这个值比较特殊,是一个引用值(或者说指针),引用指向的对象并没有参与复制,也就是说最后两个引用变量指向同一个对象

5、每个执行环境都有一个与之关联的变量对象,环境中定义的所有变量和函数都保存在这个对象中。执行环境有很多种,有全局环境、函数环境、with环境等等,这些环境的变量对象一起构成了作用域链。作用域越小,对应的变量对象在链上越靠前,作用域越大,变量对象在链上越靠后,全局执行环境的变量对象始终都是作用域链中最后一个对象

6、没有块级作用域,不声明直接使用则被当做全局变量(最好不要这么写)。

7、目前的JavaScript垃圾回收机制多采用标记清除的方式

 

目录
相关文章
|
2月前
|
前端开发 JavaScript API
JavaScript学习笔记(一)promise与async
JavaScript学习笔记(一)promise与async
|
3月前
|
存储 JavaScript
【ES6系列第二篇】适用JS初学者的Set对象和Map对象学习笔记
【ES6系列第二篇】适用JS初学者的Set对象和Map对象学习笔记
24 0
|
5月前
|
前端开发 JavaScript Python
javascript入门学习笔记打卡(2)
javascript入门学习笔记打卡(2)
22 0
|
7月前
|
JavaScript
JS 学习笔记一 (基础)
JS 学习笔记一 (基础)
39 0
|
7月前
|
JavaScript 前端开发
JS 学习笔记四(DOM) 悬停事件 获取节点
JS 学习笔记四(DOM) 悬停事件 获取节点
36 0
|
7月前
|
JavaScript
JS 学习笔记四(DOM)(节点)
JS 学习笔记四(DOM)(节点)
27 0
|
7月前
|
JavaScript 前端开发 Java
js学习笔记
js学习笔记
36 0
|
8月前
|
前端开发
前端学习笔记202305学习笔记第三十三天-js-使用const声明变量特点
前端学习笔记202305学习笔记第三十三天-js-使用const声明变量特点2
43 0
|
8月前
|
前端开发
前端学习笔记202305学习笔记第三十四天-js-引出闭包3
前端学习笔记202305学习笔记第三十四天-js-引出闭包3
58 0
|
8月前
|
前端开发
前端学习笔记202305学习笔记第三十四天-js-this绑定的优先级2
前端学习笔记202305学习笔记第三十四天-js-this绑定的优先级2
32 0