JavaScript 語(yǔ)句
JavaScript 語(yǔ)句向?yàn)g覽器發(fā)出的命令。語(yǔ)句的作用是告訴瀏覽器該做什么。
下面的 JavaScript 語(yǔ)句向 id="demo" 的 HTML 元素輸出文本 "Hello World":
document.getElementById("demo").innerHTML="Hello World";
分號(hào);
分號(hào)用于分隔 JavaScript 語(yǔ)句。
通常我們?cè)诿織l可執(zhí)行的語(yǔ)句結(jié)尾添加分號(hào)。
使用分號(hào)的另一用處是在一行中編寫(xiě)多條語(yǔ)句。
提示:您也可能看到不帶有分號(hào)的案例。
在 JavaScript 中,用分號(hào)來(lái)結(jié)束語(yǔ)句是可選的。
JavaScript 代碼
JavaScript 代碼(或者只有 JavaScript)是 JavaScript 語(yǔ)句的序列。
瀏覽器會(huì)按照編寫(xiě)順序來(lái)執(zhí)行每條語(yǔ)句。
本例將操作兩個(gè) HTML 元素:
實(shí)例
document.getElementById("demo").innerHTML="Hello World";
document.getElementById("myDIV").innerHTML="How are you?";
JavaScript 代碼塊
JavaScript 語(yǔ)句通過(guò)代碼塊的形式進(jìn)行組合。
塊由左花括號(hào)開(kāi)始,由右花括號(hào)結(jié)束。
塊的作用是使語(yǔ)句序列一起執(zhí)行。
JavaScript 函數(shù)是將語(yǔ)句組合在塊中的典型例子。
下面的例子將運(yùn)行可操作兩個(gè) HTML 元素的函數(shù):
實(shí)例
function myFunction()
{
document.getElementById("demo").innerHTML="Hello World";
document.getElementById("myDIV").innerHTML="How are you?";
}
您將在稍后的章節(jié)學(xué)到更多有關(guān)函數(shù)的知識(shí)。
JavaScript 對(duì)大小寫(xiě)敏感。
JavaScript 對(duì)大小寫(xiě)是敏感的。
當(dāng)編寫(xiě) JavaScript 語(yǔ)句時(shí),請(qǐng)留意是否關(guān)閉大小寫(xiě)切換鍵。
函數(shù) getElementById 與 getElementbyID 是不同的。
同樣,變量 myVariable 與 MyVariable 也是不同的。
空格
JavaScript 會(huì)忽略多余的空格。您可以向腳本添加空格,來(lái)提高其可讀性。下面的兩行代碼是等效的:
var name="Hello";
var name = "Hello";
對(duì)代碼行進(jìn)行折行
您可以在文本字符串中使用反斜杠對(duì)代碼行進(jìn)行換行。下面的例子會(huì)正確地顯示:
document.write("Hello \
World!");
不過(guò),您不能像這樣折行:
document.write \
("Hello World!");
使用javascript多年,寫(xiě)過(guò)無(wú)數(shù)函數(shù),今天卻才真正弄明白兩種函數(shù)定義的區(qū)別,真是悲劇,寫(xiě)下這個(gè)隨筆, 以時(shí)刻提醒自己要打好基礎(chǔ) , 一大把年紀(jì)了, 不能繼續(xù)懵懵懂懂了。
通常我們會(huì)看到以下兩種定義函數(shù)的方式:
// 函數(shù)語(yǔ)句 function fn(str) { console.log(str); }; // 表達(dá)式定義 var fnx=function(str) { console.log(str+ ' from fnx'); };
以前都是憑借自己手指的感覺(jué)隨心所欲使用兩者 -_- || ,今天看了js基礎(chǔ), 總算是解決了心中對(duì)他們的困惑:
兩種方式都創(chuàng)建了新的函數(shù)對(duì)象, 但函數(shù)聲明語(yǔ)句的函數(shù)名是一個(gè)變量名, 變量指向函數(shù)對(duì)象, 和通過(guò)var聲明變量一樣,函數(shù)定義語(yǔ)句中的函數(shù)被顯示地提前到了腳本或函數(shù)的頂部, 因此它們?cè)谡麄(gè)腳本和函數(shù)內(nèi)都是可見(jiàn)的,但是使用var 表達(dá)式定義函數(shù), 只有變量聲明提前了,變量初始化代碼仍然在原來(lái)的位置, 用函數(shù)語(yǔ)句創(chuàng)建的函數(shù), 函數(shù)名稱和函數(shù)體均被提前,所以我們可以在聲明它之前就使用它。
代碼例子如下:
console.log(typeof(fn)); // function fn('abc'); // abc console.log(typeof(fnx)); // undefined if(fnx) fnx('abc'); // will not execute else console.log('fnx is undefined'); // fnx is undefined // 函數(shù)語(yǔ)句 function fn(str) { console.log(str); }; // 表達(dá)式定義 var fnx=function(str) { console.log(str+ ' from fnx'); };
代碼很簡(jiǎn)單, 希望和我之前一樣沒(méi)有弄明白兩者區(qū)別的同學(xué)能有所收獲。