您的位置:首页 > Web前端 > JavaScript

JavaScript高级程序设计--阅读笔记

2018-01-04 16:14 495 查看
1.严格模式下,不规范的写法会报错。

2.with语句用于延长作用域链,把其他地方定义的对象直接用到当前作用于来。

3.JavaScript定义函数可以没有入参,调用函数时加上自己的入参,函数中可以用arguments
按入参顺序调用,因为是数组形式。

4.由于函数可以没有入参,所以JS的函数无法重载(重载:根据函数入参数量的不同,执行不同的同名函数)。

5.复制的对象类型被函数修改后,原对象也被修改;复制的基本变量被函数修改后,原基本变量不会被修改。因为被复制的对象和原对象指向的是同一堆内存,而基本类型不是。

6.typeof检测基本数据类型,输出类型名;instanceof则用于判断一个变量是不是某个对象的实例。

7.JavaScript作用域:内部环境可以访问外部变量,外部环境无法访问内部变量。

8.JavaScript没有块级作用域,花括号内定义的变量,运行后不会销毁,需要等待回收机制回收。

9.垃圾回收-标记清除法:变量有进入环境和离开环境,当变量进入环境时永远不能释放,当变量离开环境时,可以回收。当前主流浏览器都是使用的此方法。

10.局部变量会在离开执行环境时自动回收,而全局变量和全局对象不会自动回收,当不再需要使用它时,解除它的引用,赋null值,则垃圾回收器下次运行时可回收全局变量。

11.引用类型包括:Object对象、Array对象、Date对象、RegExp对象、Function对象、基本包装对象、单体内置对象。

12.Object类型有new和字面量两种创建方法。

13.Array类型有栈方法(push、pop)、队列方法(shift、unshift)、sort(compare函数)排序方法、reverse()对调方法、concat()复制拼接方法、slice()复制截取方法、splice()删除插入替换方法、位置方法。

14.Array迭代处理方法:every()每个、some()某些、filter()过滤、forEach()、map()挨个操作并返回操作后的数组。

15.Function类型内部属性:arguments、this。

16.函数默认属性:length、prototype,默认方法:call()、apply()。

17.call、apply能够扩充函数赖以运行的作用域。

18.eval():将传入的字符串当做ECMAScript语句来解析,把执行结果插入到原位置。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: