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網站(英文網站)中進行學習。這個網站是學習、查閱的好去處。推薦大家收藏起來。
