这里有新鲜出炉的 Javascript 教程,程序狗速度看过来!
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
高山登不上, 不是因为体力不支, 只因鞋里一粒。学习也是如此,因而有必要把 JavaScript 中常见的和与其它语言不同的那些细节学习一下
JavaScript 区分大小写:在 JavaScript 中变量、函数都是区分大小写的,例如:
- function myfunction() {}和
- function myFunction() {}不同
JavaScript 中核心对象 Array、Object 等也是区分大小写。
单引号和双引号:这个问题在学 SQLServer 拼接字符串 "select * from page where name='lida'"时就有疑惑:后面都的三个'到底是双引号在前还是单引号在前?学的多了知道,双引号是编程语言使用的,单引号是 SQLserver 标明字符串类型的。但是在 JavaScript 中单引号和双引号没有特殊的区别,都可以用来创建字符串,但是一般情况下 JavaScript 使用单引号,html 等属性值必须使用双引号;同时单引号可以包括双引号,双引号也可以包括单引号 ;特殊情况下需要使用转义符号 "\",例如:
- var temp = '<p class="nameA">What\'s this?';
括号的作用:和其他语言一样,JavaScript 中的括号同样是两种作用,一种是当作分隔符使用,例如:(1+1)*2; 第二种作用是表达式,例如:(1+1)*2; 第二种作用是表达式,例如:(function (){})() 中被分开的括号为分隔符,后面的括号表示执行方法。
函数的调用和引用:
- var temp = myFunction();
- var temp = myFunction;
因为括号可以代表执行,第一个 temp 代表的是 myFunction 函数的返回值,而第二个 temp 代表的是把 myFunction 赋值给 temp。例如:
- <script type="text/javascript">
- // JavaScript Document
- (function() {
- function $() {
- alert("正在Buffering!");
- }
- window['LD'] = {}
- window['LD']['$'] = $;
- })();
- window.onload = LD.$;
- </script>
网页可以正常加载,因为这代表把 $ 方法赋值给了 window.onload,页面加载运行的是自己编写的 $() 函数;如果把这句换成
window.onload=LD.$(); 运行结果如下;首先会显示" 正在 Buffering",然后是
这是因为 onload 事件不需要返回值,而 $ 函数也没有返回值,所以会导致尚未实现的错误。
换行:无论是用哪种引号创建字符串,中间都不能包含强制换行符。如下:
- var temp = '<h2 class="nameA">List</h2>
- <ol>
- </ol>'
将导致解析错误,可以使用 \ 或 + 来换行:
- var temp = '<h2 class="nameA">List</h2>\
- <ol>\
- </ol>\
- ';
大括号和分号可选:
在 JavaScript 中分号和大括号不是必须的,例如 alert('A'); 和 alert('A') 没有区别,但是在 if 语句处运行有差异,最好不要省略。
重载
JavaScript 是基于原型的面向对象,没有如 C# 中的重载,在此我们可以称之为替换,同名函数无论参数个数是否相同,程序都会执行最后一个同名函数,例如 function alert(){} 将会覆盖 JavaScript 中的 alert 函数。
作用域和闭包
可以参加我的博客《
JavaScript 中的作用域链和闭包》。
来源: http://www.phperz.com/article/17/0712/281798.html