JavaScript 語(yǔ)法

2022-05-18 13:59 更新

JavaScript 是一門(mén)程序語(yǔ)言。語(yǔ)法規(guī)則定義了語(yǔ)言結(jié)構(gòu)。


JavaScript 語(yǔ)法

JavaScript 是一個(gè)腳本語(yǔ)言。

它是一個(gè)輕量級(jí),但功能強(qiáng)大的編程語(yǔ)言。


JavaScript 字面量

在編程語(yǔ)言中,一個(gè)字面量是一個(gè)常量,如 3.14。

數(shù)字(Number)字面量 可以是整數(shù)或者是小數(shù),或者是科學(xué)計(jì)數(shù)(e)。

3.14

1001

123e5

嘗試一下 ?

字符串(String)字面量 可以使用單引號(hào)或雙引號(hào) :

"John Doe"

'John Doe'

嘗試一下 ?

表達(dá)式字面量 用于計(jì)算:

5 + 6

5 * 10

嘗試一下 ?

數(shù)組(Array)字面量 定義一個(gè)數(shù)組:

[40, 100, 1, 5, 25, 10]

對(duì)象(Object)字面量 定義一個(gè)對(duì)象:

{firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"}

函數(shù)(Function)字面量 定義一個(gè)函數(shù):

function myFunction(a, b) { return a * b;}


JavaScript 變量

在編程語(yǔ)言中,變量用于存儲(chǔ)數(shù)據(jù)值。

JavaScript 使用關(guān)鍵字 var 來(lái)定義變量, 使用等號(hào)來(lái)為變量賦值:

var x, length

x = 5

length = 6

嘗試一下 ?

變量可以通過(guò)變量名訪(fǎng)問(wèn)。在指令式語(yǔ)言中,變量通常是可變的。字面量是一個(gè)恒定的值。

Note 變量是一個(gè)名稱(chēng)。字面量是一個(gè)。

JavaScript 操作符

JavaScript使用 算術(shù)運(yùn)算符 來(lái)計(jì)算值:

(5 + 6) * 10

嘗試一下 ?

JavaScript使用賦值運(yùn)算符給變量賦值:

x = 5
y = 6
z = (x + y) * 10

嘗試一下 ?

JavaScript語(yǔ)言有多種類(lèi)型的運(yùn)算符:

Type 實(shí)例 描述
賦值,算術(shù)和位運(yùn)算符 =  +  -  *  / 在 JS 運(yùn)算符中描述
條件,比較及邏輯運(yùn)算符 ==  != <  >  在 JS 比較運(yùn)算符中描述


JavaScript 語(yǔ)句

在 HTML 中,JavaScript 語(yǔ)句向?yàn)g覽器發(fā)出的命令。瀏覽器通過(guò) JavaScript 語(yǔ)句明白要執(zhí)行什么操作。

語(yǔ)句是用分號(hào)分隔:

x = 5 + 6;
y = x * 10;


JavaScript 關(guān)鍵詞

JavaScript 語(yǔ)句通常以關(guān)鍵詞為開(kāi)頭。 var 關(guān)鍵詞告訴瀏覽器創(chuàng)建一個(gè)新的變量:

var x = 5 + 6;
var y = x * 10;


JavaScript 標(biāo)識(shí)符

和其他任何編程語(yǔ)言一樣,JavaScript 保留了一些標(biāo)識(shí)符為自己所用。

JavaScript 同樣保留了一些關(guān)鍵字,這些關(guān)鍵字在當(dāng)前的語(yǔ)言版本中并沒(méi)有使用,但在以后 JavaScript 擴(kuò)展中會(huì)用到。

JavaScript 標(biāo)識(shí)符必須以字母、下劃線(xiàn)(_)或美元符($)開(kāi)始。

后續(xù)的字符可以是字母、數(shù)字、下劃線(xiàn)或美元符(數(shù)字是不允許作為首字符出現(xiàn)的,以便 JavaScript 可以輕易區(qū)分開(kāi)標(biāo)識(shí)符和數(shù)字)。

以下是 JavaScript 中最??重要的保留字(按字母順序):

abstract else instanceof super
boolean enum int switch
break export interface synchronized
byte extends let this
case false long throw
catch final native throws
char finally new transient
class float null true
const for package try
continue function private typeof
debugger goto protected var
default if public void
delete implements return volatile
do import short while
double in static with

JavaScript 注釋

不是所有的 JavaScript 語(yǔ)句都是"命令"。雙斜杠 // 后的內(nèi)容將會(huì)被瀏覽器忽略:

// 我不會(huì)執(zhí)行

JavaScript 數(shù)據(jù)類(lèi)型

JavaScript 有多種數(shù)據(jù)類(lèi)型:數(shù)字,字符串,數(shù)組,對(duì)象等等:

var length = 16;                                  // Number 通過(guò)數(shù)字字面量賦值
var points = x * 10;                              // Number 通過(guò)表達(dá)式字面量賦值
var lastName = "Johnson";                         // String 通過(guò)字符串字面量賦值
var cars = ["Saab", "Volvo", "BMW"];              // Array  通過(guò)數(shù)組字面量賦值
var person = {firstName:"John", lastName:"Doe"};  // Object 通過(guò)對(duì)象字面量賦值


數(shù)據(jù)類(lèi)型的概念

編程語(yǔ)言中,數(shù)據(jù)類(lèi)型是一個(gè)非常重要的內(nèi)容。

為了可以操作變量,了解數(shù)據(jù)類(lèi)型的概念非常重要。

如果沒(méi)有使用數(shù)據(jù)類(lèi)型,以下實(shí)例將無(wú)法執(zhí)行:

16 + "Volvo"

16 加上 "Volvo" 是如何計(jì)算呢? 以上會(huì)產(chǎn)生一個(gè)錯(cuò)誤還是輸出以下結(jié)果呢?

"16Volvo"

你可以在瀏覽器嘗試執(zhí)行以上代碼查看效果。

在接下來(lái)的章節(jié)中你將學(xué)到更多關(guān)于數(shù)據(jù)類(lèi)型的知識(shí)。


JavaScript 函數(shù)

JavaScript 語(yǔ)句可以寫(xiě)在函數(shù)內(nèi),函數(shù)可以重復(fù)引用:

引用一個(gè)函數(shù) = 調(diào)用函數(shù)(執(zhí)行函數(shù)內(nèi)的語(yǔ)句)。

function myFunction(a, b) {
    return a * b;                                // 返回 a 乘于 b 的結(jié)果
}


JavaScript 對(duì)大小寫(xiě)敏感。

JavaScript 對(duì)大小寫(xiě)是敏感的。

當(dāng)編寫(xiě) JavaScript 語(yǔ)句時(shí),請(qǐng)留意是否關(guān)閉大小寫(xiě)切換鍵。

函數(shù) getElementByIdgetElementbyID 是不同的。

同樣,變量 myVariableMyVariable 也是不同的。

提示:在本站的編程實(shí)戰(zhàn)中,你可以通過(guò)練習(xí)理解JavaScript變量的大小寫(xiě)敏感性。


JavaScript 字符集

JavaScript 使用 Unicode 字符集。

Unicode 覆蓋了所有的字符,包含標(biāo)點(diǎn)等字符。

如需進(jìn)一步了解,請(qǐng)學(xué)習(xí)我們的 完整 Unicode 參考手冊(cè)


您知道嗎?

Note JavaScript 中,常見(jiàn)的是駝峰法的命名規(guī)則,如 lastName (而不是lastname)。
Note JavaScript 是腳本語(yǔ)言。瀏覽器會(huì)在讀取代碼時(shí),逐行地執(zhí)行腳本代碼。而對(duì)于傳統(tǒng)編程來(lái)說(shuō),會(huì)在執(zhí)行前對(duì)所有代碼進(jìn)行編譯。


以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)