Javascript基礎(chǔ)知識詳解
變量
- 基本語法
var age=10;//聲明一個名稱為age的變量,并且為它賦值,稱為變量的初始化
var是一個JS關(guān)鍵字,用來聲明變量。我們也可以按照其他編程語言的思路,給變量進(jìn)行更新,并且可以同時聲明多個變量,此時只需要使用一個var 多個變量名之間使用英文逗號來隔開。
- 命名規(guī)范
由字母(A-Za-z)、數(shù)字(0-9)、下劃線(_)、美元符號( $ )組成,如:usrAge, num01, _name
嚴(yán)格區(qū)分大小寫。var app; 和var App; 是兩個變量
不能以數(shù)字開頭并且必須是一個單詞,中間不能有空格。18age 是錯誤的
不能是關(guān)鍵字、保留字。例如:var、for、while
變量名必須有意義。
遵守駝峰命名法。首字母小寫,后面單詞的首字母需要大寫。myFirstName
數(shù)據(jù)類型
- 數(shù)據(jù)類型介紹
JS是一種弱類型或者說動態(tài)語言,這意味著不需要提前聲明變量的值,在程序運(yùn)行過程中,類型會自動被確定。變量的數(shù)據(jù)類型是由JS引擎根據(jù)等號右邊變量值的數(shù)據(jù)類型進(jìn)行判斷的,意味著相同的變量可以用作不同的類型。
var age = 10; // 這是一個數(shù)字型 var age="10" //這是一個字符串
JS數(shù)據(jù)類型分為簡單數(shù)據(jù)類型和復(fù)雜數(shù)據(jù)類型
Number String Boolean Undefined Null(簡單數(shù)據(jù)類型又稱為基本數(shù)據(jù)類型)
Object Array Date function(復(fù)雜數(shù)據(jù)類型又稱為引用數(shù)據(jù)類型)
但是在ES6和H5的新增語法中,又新增了Symbol簡單數(shù)據(jù)類型(后期會講)
- Number
常見的有二進(jìn)制,八進(jìn)制,十進(jìn)制,十六進(jìn)制,在JS中八進(jìn)制前面加0,十六進(jìn)制前面加0x
//1.八進(jìn)制數(shù)字序列范圍:0~7 var num1 = 07; // 對應(yīng)十進(jìn)制的7 var num2 = 019; // 對應(yīng)十進(jìn)制的19 var num3 = 08; // 對應(yīng)十進(jìn)制的8 //2.十六進(jìn)制數(shù)字序列范圍:0~9以及A~F var num = 0xA;
最大值:Number.MAX_VALUE,這個值為:1.7976931348623157e+308
最小值:Number.MIN_VALUE,這個值為:5e-32
alert(Number.MAX_VALUE); // 1.7976931348623157e+308 alert(Number.MIN_VALUE); // 5e-32
三個特殊值
Infinity ,代表無窮大,大于任何數(shù)值
-Infinity ,代表無窮小,小于任何數(shù)值
NaN ,Not a number,代表一個非數(shù)值
isNaN()判斷一個變量是否為非數(shù)字的類型
var usrAge = 21; var isOk = isNaN(userAge); console.log(isNum); // false ,21 不是一個非數(shù)字 var usrName = "andy"; console.log(isNaN(userName)); //true ,"andy"是一個非數(shù)字
- String
使用單引號表示,也可以進(jìn)行字符串引號嵌套,可以用單引號嵌套雙引號或者用雙引號嵌套單引號,但是不能單雙引號混合。轉(zhuǎn)義字符如下。
獲取字符串長度length
字符串拼接 字符串+任何類型=拼接之后的新字符串,如果是兩個數(shù)值相加則結(jié)果就是一個數(shù)值
- Boolean
true和false,布爾值與數(shù)字型相加的時候,true的值為1,false的值為0
- Undefined
一個聲明后沒有被賦值的變量使用會有一個默認(rèn)值 undefined
一個沒有聲明的變量,使用會報錯。
var variable; console.log(variable); // undefined console.log('你好' + variable); // 你好undefined console.log(11 + variable); // NaN console.log(true + variable);// NaN
- Null
var vari = null; console.log('你好' + vari); // 你好null console.log(11 + vari); // 11 console.log(true + vari); // 1
- 數(shù)據(jù)類型轉(zhuǎn)換
使用表單、prompt 獲取過來的數(shù)據(jù)默認(rèn)是字符串類型的,此時就不能直接簡單的進(jìn)行加法運(yùn)算,而需要轉(zhuǎn)換變量的數(shù)據(jù)類型。通俗來說,就是把一種數(shù)據(jù)類型的變量轉(zhuǎn)換成另外一種數(shù)據(jù)類型。
轉(zhuǎn)化為字符串類型
轉(zhuǎn)化為數(shù)字類型
轉(zhuǎn)化為布爾類型
代表空、否定的值會被轉(zhuǎn)換為false ,如''、0、NaN、null、undefined
其余值都會被轉(zhuǎn)換為true
console.log(Boolean('')); // false console.log(Boolean(0)); // false console.log(Boolean(NaN)); // false console.log(Boolean(null)); // false console.log(Boolean(undefined)); // false console.log(Boolean('小白')); // true console.log(Boolean(12)); // true
擴(kuò)展點(diǎn)
解釋型語言和編譯型語言。
計算機(jī)要把程序語言編譯(用翻譯器)成機(jī)器語言才能執(zhí)行程序。
翻譯器翻譯的成機(jī)器語言有兩種方式,一個是編譯,另外一個是解釋,區(qū)別在于翻譯的時間點(diǎn)不同。
編譯器是在代碼執(zhí)行之前進(jìn)行編譯,生成中間代碼文件
解釋器是在運(yùn)行時進(jìn)行及時解釋,并立即執(zhí)行
- 標(biāo)識符就是指開發(fā)人員為變量,參數(shù),函數(shù)取得名字。標(biāo)識符不能是關(guān)鍵字或保留字
- 關(guān)鍵字時指JS本身已經(jīng)使用了的字,不能再用它們充當(dāng)變量名和方法名
包括:break、case、catch、continue、default、delete、do、else、finally、for、function、if、in、instanceof、new、return、switch、this、throw、try、typeof、var、void、while、with
- 保留字就是預(yù)留的關(guān)鍵字,未來可能會成為關(guān)鍵字。
包括:boolean、byte、char、class、const、debugger、double、enum、export、extends、fimal、float、goto、implements、import、int、interface、long、mative、package、private、protected、public、short、static、super、synchronized、throws、transient、volatile等。
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
javascript中call()、apply()的區(qū)別
這篇文章主要介紹了javascript中call()、apply()的區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03淺析四種常見的Javascript聲明循環(huán)變量的書寫方式
這篇文章主要介紹了四種常見的聲明循環(huán)變量的書寫方式,對其進(jìn)行簡單的分析和比較,需要的朋友可以參考下2015-10-10Javascript基礎(chǔ)知識(三)BOM,DOM總結(jié)
本文是基礎(chǔ)知識系列的第三篇文章,主要介紹javascript中BOM,DOM的一些心得總結(jié),非常實(shí)用,有需要的朋友可以參考下2014-09-09document.getElementById獲取控件對象為空的解決方法
今天寫個網(wǎng)頁,想在頁面加載onLoad時,動態(tài)顯示由后臺其他程序傳來的數(shù)據(jù)時,用document.getElementById獲取控件對象總是為空。但是檢查了這個id確實(shí)是存在的??聪挛牡氖纠徒鉀Q方法2013-11-11