七天整理《javascript高级程序第三版》
2016-10-01 本文已影响229人
彬哥头发多
难得七天假,正好找个时间系统的整理下js知识,不废话,打算再未来七天再读一遍高程三,并把核心内容抽离出来分享。大纲如下:
第一天
简介、基本语法、数据类型、变量函数以及作用域
DOM和BOM
历史:js校验减轻服务器和用户压力,布莱登艾克写了js。
1. ECMAScript
2. DOM
3. BOM
ECMA262 ->我们用的是第五版,最新是ES6制定中是ES7.
DOM分为三级
1.DOM1主要是规定标签映射XML结构(不存在DOM0)
2.DOM2规定了事件和css接口
3.DOM3规定了加载和保存文档方法(个人觉得不全高三说的不全如DOMMouseScroll 以及其它DOM事件)
关于script标签
1.放在body后面执行
2.使用defer跟放在后面执行一样,async没用,因为不能保证加载顺序所以基本上是废的。
3.嵌入和外链最大的区别js文件可缓存。
js基本语法
1.区分大小写
2.标识符首位不能是数字
3.变量可以var a =12,b=5,c=5;这样定义
js推荐语法风格
if(test){//最好不要单独起一行
}
数据类型
1.基本数据类型undefined boolean string number null
2.复合类型 Oject(注意函数数据对象)
语句控制
1.判断
2.循环
函数
重点有以下几件事:
1.参数arguments
2.返回值return
3.没有重载,会覆盖
函数传参
function addTen(num){
num+=10;
return num;
}
var count = 20;
var res = addTen(count);
alert(count);//20 参数都是按值传递的也就是都是复制一份儿不管它是基本类型还是复合类型
alert(res);//30
注意:对象也是按照值传递的!!
function show(obj){
obj.name = 'leo';
var obj = new Object();
obj.name = '大彬哥';
}
var person = new Object()
show(person);
alert(person.name);//依然是leo 清楚了吧,如果是引用那么全是 大彬哥这里是值传递
作用域链和垃圾回收
1.儿子没有的东西找它老子去
2.垃圾手动释放 将对应的对象直接等于null手动解除关联就行了。
今天推进了82页,已经超出进度,明天讲DOM BOM和事件。重中之重。
.