[size=large]
js里最重要的知识就这几块:
类型转换:
在js里,常见的一个问题就是数据类型的转换。数字,字符串,boolean,
对象(日期,函数,自定义对象)等等之间的相互转换。它们的转换一般发生
在如下几个地方:
1.在使用运算符运算时。这时候运算符要求它的运算数具有某种类型。
2.在某些关键字的上下文中要求操作的内容是某种类型。比如if,while后面的
内容要求是boolean值。
这个时候类型如果不对,js会会按照默认的一些规则处理成合适的类型。所以
问题的重点就是熟悉那些规则。这里贴个地址帮助识记类型转换的知识点。
[url]http://www.w3school.com.cn/js/pro_js_typeconversion.asp[/url]
原型继承:
一般的OO语言里,继承操作都是基于类的方式。 js 里是基于原型的方式。
这里贴几个博客地址,博客作者讲解的比较通俗易懂。
[url]http://www.ruanyifeng.com/blog/2011/06/designing_ideas_of_inheritance_mechanism_in_javascript.html[/url]
[url]http://blog.vjeux.com/2011/javascript/how-prototypal-inheritance-really-works.html[/url]
闭包:
javaScript语言根据其特性通常也被划分成函数式语言,动态类型语言。在js中理解js的闭包
之前得先理解下js的变量作用域(scope chain)。如下这些博客可以先看下
[url]http://www.cnblogs.com/rainman/archive/2009/04/28/1445687.html[/url]
[url]http://www.laruence.com/2009/05/28/863.html[/url]
知道作用域后,可以了解下闭包了。
首先说下闭包的概念:闭包在英文资料里的名字是Closure。
它是个持有函数局部信息的代码执行块。例如:
function ClosureExample(){
var count = 0;
//返回了一个内部函数
return function(){
alert( ++count);
}
}
var a= ClosureExample(); //得到b
a();
a();
上面对a的两次调用,如果认为运行结果都是alert(1),那就错了。
实际运行结果是alert(1),alert(2)。
可以看到第一次运行后,函数的的变量信息count的值的改变竟然被保存了下来。
综上,对于闭包的第一印象就是如果调用一个函数a时如果返回了函数b,那么函数a内部的
函数b就被外部的环境所引用了。那么这时就产生了闭包作用。
这里贴个博客地址,博客的作者写的内容跟一本javaScript书籍《javaScript权威指南》里
讲闭包的内容差不多。很不错。
[url]http://www.felixwoo.com/archives/247[/url]
事件处理:
主要熟悉js的2级事件模型。特别关注下合成事件。
正则表达式:
这个主要看下一个Jeffrey E. F. Friedl 著,余晟 译的《精通正则表达式》一书即可。
[/size]
js里最重要的知识就这几块:
类型转换:
在js里,常见的一个问题就是数据类型的转换。数字,字符串,boolean,
对象(日期,函数,自定义对象)等等之间的相互转换。它们的转换一般发生
在如下几个地方:
1.在使用运算符运算时。这时候运算符要求它的运算数具有某种类型。
2.在某些关键字的上下文中要求操作的内容是某种类型。比如if,while后面的
内容要求是boolean值。
这个时候类型如果不对,js会会按照默认的一些规则处理成合适的类型。所以
问题的重点就是熟悉那些规则。这里贴个地址帮助识记类型转换的知识点。
[url]http://www.w3school.com.cn/js/pro_js_typeconversion.asp[/url]
原型继承:
一般的OO语言里,继承操作都是基于类的方式。 js 里是基于原型的方式。
这里贴几个博客地址,博客作者讲解的比较通俗易懂。
[url]http://www.ruanyifeng.com/blog/2011/06/designing_ideas_of_inheritance_mechanism_in_javascript.html[/url]
[url]http://blog.vjeux.com/2011/javascript/how-prototypal-inheritance-really-works.html[/url]
闭包:
javaScript语言根据其特性通常也被划分成函数式语言,动态类型语言。在js中理解js的闭包
之前得先理解下js的变量作用域(scope chain)。如下这些博客可以先看下
[url]http://www.cnblogs.com/rainman/archive/2009/04/28/1445687.html[/url]
[url]http://www.laruence.com/2009/05/28/863.html[/url]
知道作用域后,可以了解下闭包了。
首先说下闭包的概念:闭包在英文资料里的名字是Closure。
它是个持有函数局部信息的代码执行块。例如:
function ClosureExample(){
var count = 0;
//返回了一个内部函数
return function(){
alert( ++count);
}
}
var a= ClosureExample(); //得到b
a();
a();
上面对a的两次调用,如果认为运行结果都是alert(1),那就错了。
实际运行结果是alert(1),alert(2)。
可以看到第一次运行后,函数的的变量信息count的值的改变竟然被保存了下来。
综上,对于闭包的第一印象就是如果调用一个函数a时如果返回了函数b,那么函数a内部的
函数b就被外部的环境所引用了。那么这时就产生了闭包作用。
这里贴个博客地址,博客的作者写的内容跟一本javaScript书籍《javaScript权威指南》里
讲闭包的内容差不多。很不错。
[url]http://www.felixwoo.com/archives/247[/url]
事件处理:
主要熟悉js的2级事件模型。特别关注下合成事件。
正则表达式:
这个主要看下一个Jeffrey E. F. Friedl 著,余晟 译的《精通正则表达式》一书即可。
[/size]