js是什么?
作为入门的第一部分,这个问题还是要说明一下的。js是目前最流行的web脚本语言,可以在浏览器中解释执行。在学习js之前,大家最好还是要有一些HTML和CSS方面的知识。如果没有也不用担心,我会在用到的时候做介绍。
我申明一下,以下内容为概念性内容,对使用不会有任何帮助,但出去装13、应聘、勾MM可能会有用处,请选择性阅读。
Java和Javascript的关系
这两个东西没有任何关系,大家不要被名字迷惑!想了解更多的朋友请到这里来《Java和Javascript的区别》
JS能做什么?
就整个Web方面来说,JS虽不是万能的,但没有JS是万万不能的。如果按照CommonJS的设计,JS更是具有逆天的功能,从网页到客户端、到服务器都可以用js来实现,真的是无所不能。我们单说在web上面js的能力吧。
- 可以操作HTML,提供了一种运行时改变HTML的工具
- 可以附加并执行事件,符合面向事件编程的思想
- 数据验证功能,在提交表单时对表单数据进行合法性验证
- 对客户浏览器的操作,前进、后退、刷新、跳转、打开新窗口、打印等
- 可以创建并使用Cookies
js简单用法
js是C系语言,其语法和C、C++、Java、C#非常相似,有上述语言基础的朋友会觉得完全没有难度。
如何在页面中使用js?
就是的用法很简单,你可以在HTML页面的<script>标签中写你的js代码,也可以建立单独的js文件,并在HTML页面中添加引用。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Untitled Page</title> <script type="text/javascript"> document.write("Hello world!"); </script> </head> <body> </body> </html>
引用独立的JS文件:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Untitled Page</title> <script type="text/javascript" src="demo.js"></script> </head> <body> </body> </html>
需要注意的是,尽管HTML中的标签可以用<script />标记,但对于引用的js标签,貌似是不行的,所以一定要写完整的<script></script>标签。原因不详,有知道的朋友请不吝赐教!
变量的定义和作用域
js中的所有变量都是使用var关键字来定义的,与变量的类型无关。例如:
var a = 1;
var a = "1";
第一个a的类型就是Number,第二个则是String。Number和String都是JS内置的对象,我们会在后面的内容中讲到。
对于变量的作用域,如果我们是在函数外面定义的,那么它的作用域将是全局的,如果是在方法内定义的,则在方法体内有效。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Untitled Page</title> <script type="text/javascript"> var a = 1; document.write(a); function demo() { var a = 2; document.write(a); } demo(); document.write(a); </script> </head> <body> </body> </html>
猜猜这个页面的输出内容……
Javascript 语句、代码和代码块
JavaScript 语句是发给浏览器的命令。这些命令的作用是告诉浏览器要做的事情。
document.write("Hello world");
通常要在每行语句的结尾加上一个分号。大多数人都认为这是一个好的编程习惯,而且在 web 上的 JavaScript 案例中也常常会看到这种情况。
分号是可选的(根据 JavaScript 标准),浏览器把行末作为语句的结尾。正因如此,常常会看到一些结尾没有分号的例子。通过使用分号,可以在一行中写多条语句。
Javascript 代码是语句的序列,通过将多行语句排列在一起,组成一段Javascript代码。
Javascript 代码块是用来更好的组织代码的。代码块使用花括号包裹,例如:
<script type="text/javascript"> { document.write("<h1>This is a header</h1>"); document.write("<p>This is a paragraph</p>"); document.write("<p>This is another paragraph</p>"); } </script>
Javascript 注释
注释分为单行注释和多行注释。单行注释以//开头,无需结尾;多行注释以 /* 开头,以 */ 结尾。例如:
<script type="text/javascript"> //这是一个单行注释,下面的语句输出一个Helo单词 document.write("Hello "); /* 这是一个多行注释 下面的代码将输出一个world单词 */ document.write("world! "); </script>
Javascript 运算符
运算符包括算术运算符、赋值运算符、比较运算符、逻辑运算符。
算术运算符用于执行变量与/或值之间的算术运算,JS中的算术运算符有:
赋值运算符用于给 JavaScript 变量赋值,JS中的赋值运算符有:
比较运算符在逻辑语句中使用,以测定变量或值是否相等,JS中的比较运算符有:
逻辑运算符用于测定变量或值之间的逻辑,JS中的逻辑运算符有:
Javascript 中的分支语句
Javascript的分支语句有两种,if...else...分支语句;switch...case...分支语句。
if...else...分支:if后面的括号里面需要一个bool值或者一个逻辑表达式,如果后面只有一行要执行的语句,花括号可以省略不写。如果有多个条件判断,可以在else后面加上if判断即可。
var a = 1, b = 2; if (a == b) { alert("a和b不相等"); } else { alert("a和b相等"); }
switch...case...分支:switch 后面的 (n) 可以是表达式,也可以(并通常)是变量。然后表达式中的值会与 case 中的数字作比较,如果与某个 case 相匹配,那么其后的代码就会被执行。break 的作用是防止代码自动执行到下一行。
var a = "Hello";
switch (a) {
case "Hello":
{
alert("Hello");
}
break;
case "World":
{
alert("World");
}
break;
default:
break;
}
Javascript 中的循环语句
Javascript中的循环语句有:for循环,while循环。
for循环示例:
for(var a = 0; a<10; a++){ document.write("当前变量的值为:" + a); }
while循环示例:
var a = 0; while (a < 10) { document.write("当前变量的值为:" + a); a++; }
在执行循环的过程中,我们可能要结束循环,或者结束本次循环,继续下次循环。如果要结束并跳出循环过程,需要使用break,结束本次循环,但仍进行下次循环,需要使用continue。
for (var a = 0; a < 10; a++) { if (a > 5) break; if (a % 2 == 0) continue; document.write("当前变量的值为:" + a); }
break和continue的区别是:break将结束并跳出循环,不再执行任何循环中的代码。continue将结束本次的循环,但扔进行下次判断,看是否需要继续执行。
关于更多JS语法知识,你可以到w3school网站(英文网站)中进行学习。这个网站是学习、查阅的好去处。推荐大家收藏起来。
本文转自齐师傅博客园博客,原文链接:http://www.cnblogs.com/youring2/archive/2012/08/05/2621863.html,如需转载请自行联系原作者