主要学习内容:
- ECMAScript 基础
- js对象基础
- 继承
ECMAScript 基础
语法:
- 区分大小写
- 变量弱类型
- 每行结尾;可有可无
- 注释和java和PHP相同
ECMAScript五种原始类型
-
Undefined 变量未初始化时,该变量的默认值为Undefined;
-
Null Undefined是从Null中派生出来的; null == undefined //true
-
Boolean 只要是对象,Boolean返回的就是true。0和null值默认为false
-
Number toString()方法可分为默认模式和基模式; 如:toString(16);
-
String 使用 typeof var 可得var的变量类型 强制类型转换:在解决null这个特殊值时,比较有趣。 var s1 = String(null); //"null" var oNull = null; var s2 = oNull.toString(); //won't work,causes an error
运算符
js中的浮点数乘法运算都是先扩大为整数再运算,而后除以相应的倍数,故在乘法的结果中也会出现无限循环小数。保险做法为先将运算数扩大百倍再将结果缩小百倍。
Function类
无重载(利用arguments可实现重载机制,arguments为参数可变数组) 函数也可作为参数传递
js对象基础
对象的废除
- 当再没有对对象的引用时,该对象被废除。
- 当强制将对象的引用设为null值时,可以强制性废除对象。
对象类型
-
本地对象(独立于宿主环境的ECMAScript实现提供的对象)
-
Array: join()实现链接数组元素 push() :数组尾部增加一个元素,可传递多个元素,但总是习惯与传递一个参数且使用多次。 pop():数组尾部删除一个元素。 shift():删除数组中的第一个位置元素。 unshift:增加一个元素到第一个位置。
-
Date:存在Date类,且有多种表现格式。
-
内置对象(由ECMAScript实现提供的,独立于宿主环境的所有对象,在ECMAScript程序开始执行时开始出现;每个内置对象都是本地对象;)
- Global:根本不存在。
-
默认的方法为global对象的方法,如isNaN(); encodeURI() encodeURIComponent():想较于encodeURI,将特殊字符全部转化。 decodeURI() decodeURIComponent():输出上面两种URI编码。 escape() unescape():尽量避免使用,只能对ASCII正确编码。不能对Unicode全部编码。 eval():解释js的程序,慎重使用,很可能代码注入。
-
Math:提供各种处理函数。
-
宿主对象
-
定义类或者函数: 工厂方式:每次创建一个对象,直接返回对象。 构造函数方式:使用this。 原型方式: 混合的构造函数/原型方式:构造变量,原型初始化函数。
-
修改对象: Object.prototype.function(); Object.prototype.var;
-
继承
-
对象冒充 call(this,var a1,var a2); apply(this,new Array("",""));
转载自:
文章: