目錄: 1、變數:存儲數據的容器 2、數據類型 3、string數據類型 4、number數據類型 5、boolean數據類型 6、數據類型的隱式轉換 6、數據類型轉換函數 7、特殊類型 8、算術運算 9、關係運算 10、邏輯運算 11、條件運算符 1、變數:存儲數據的容器 1)變數聲明:使用關鍵字 ...
目錄:
1、變數:存儲數據的容器
2、數據類型
3、string數據類型
4、number數據類型
5、boolean數據類型
6、數據類型的隱式轉換
6、數據類型轉換函數
7、特殊類型
8、算術運算
9、關係運算
10、邏輯運算
11、條件運算符
1、變數:存儲數據的容器
1)變數聲明:使用關鍵字var聲明變數,如var x,y;
變數命名常用於表示函數、變數等的名稱。
u 註意事項:以var關鍵字聲明,聲明的時候不確定類型,變數的類型以賦值為準。
例如:
var x,y,z; x = 10; y = "mary"; z = true;
2)變數初始化:使用等號賦值
如:var count = 0;
u 註意事項:沒有初始化的變數則自動取值為undefined
1) 變數命名規則:
1、不以數字開頭的字母、數字、下劃線、$。
2、不能和保留關鍵字重覆,如var、function、number、string、break、if等。
3、 變數名有含義(見名知意)
4、 多個單詞時,首字母小寫,其餘單詞首字母大寫。
5、 不要隨意縮寫命名,除公認的縮寫外。
註:在JS中變數名是區分大小寫的
2) 變數的分類
變數具有作用域:變數的有效範圍
1、公共變數:定義在所有函數外,所有函數都可以使用。
2、局部變數:定義在函數內部的,僅函數中可以使用。
2、數據類型
1)基本類型:number數字、string字元串、boolean布爾
2)特殊類型:null空、undefined未定義
3)複雜類型:array數組、object對象
3、string數據類型
1)表示文本:由Unicode字元、數字、標點符號組成的序列。
2)首尾由單引號或雙引號括起來。(只要引號括起來的都是字元串)
3)特殊字元需要轉義,用轉義符\,如:\n,\\,\',\“
例如:
var a = "歡迎來到\"JavaScript世界\"";
u 註意事項:可用在正則表達式,只允許錄入漢字[^\u4e00-\u9fa5$],每個漢字都有轉義符。
4、number數據類型
1)不區分整型數值和浮點型數值:所有數字都採用64位浮點格式存儲,類似於double格式。
2)整數:
3)浮點數:使用小數點記錄數據。
5、boolean數據類型
1)僅有兩個值:true和false;實際運算中true=1,false=0
2)多用於結構控制語句。
6、數據類型的隱式轉換
1)JavaScript屬於鬆散類型的程式語言
①變數在聲明時不需要指定數據類型。
②變數由賦值操作確定數據類型。
2)不同類型數據在計算過程中會自動進行轉換
①數字+字元串:數字轉換為字元串
②數字+布爾值:true轉換為1,false轉換為0
③字元串+布爾值:布爾值轉換為字元串true或false
④布爾值+布爾值:布爾值轉換為數值1或0
var s="a"; var n=1; var b1=true; var b2=false; alert(s + n);//a1 alert(s + b1);//atrue alert(n + b1);//2 alert(b1 + b2);//1
6、數據類型轉換函數
1)轉換方式:
①隱式轉換:直接轉,預設的規則
②顯式轉換:利用轉換的方法
u 註意事項:不建議用隱式轉換。
2)顯式轉換
①toString:轉成字元串,所有數據類型均可轉換為string類型。
②parseInt:強制轉換成整數,如果不能轉換,則返回NaN。
例如:parseInt("6.12")=6(無四捨五入)
③parseFloat:牽制轉換成浮點數,如果不能轉換,則返回NaN。
例如:parseFloat("6.12")=6.12
④typeof:查詢數值當前類型,返回string/number/boolean/object。
例如:typeof(“test”+3)="string"
3)NaN:not a number,非常特殊,它不是數字,所以任何數跟它都不相等,甚至NaN本身也不等於NaN
4)isNaN(str): is not a number,判斷文本是否為數值,false為數值,true為非數值
5)案例
eg1:轉換函數:得到錄入數值的整數部分
<!-- html代碼: --> <input type="text" id="txtData" /> <input type="button" value="得到錄入數據的整數部分" onclick="getInt();" /> //js代碼: <script type="text/javascript"> function getInt() { var str = document.getElementById("txtData").value; if (isNaN(str)) { alert("請錄入數值"); }else { var data = parseInt(str); alert("整數部分為:" + data); } } </script>
eg2:轉換函數:計算錄入數值的平方
<!-- html代碼: --> <input type="text" id="txtData" /> <input type="button" value="計算平方" onclick="getSquare();" /> //js代碼: <script type="text/javascript"> function getSquare() { var str = document.getElementById("txtData").value; if (isNaN(str)){ alert("請錄入數值"); }else { var data = parseFloat(str); var result = data * data; alert(result); } } </script>
7、特殊類型
1)null:null在程式中代表“無值”或者“無對象”。可以通過給一個變數賦值null來清除變數的內容。
2)undefined:聲明瞭變數但從未賦值或這對象屬性不存在。
8、算術運算
1)加(+)減(-)乘(*)除(/)餘數(%)
+=、-=、*=、/=、%=
例如:i+=1等價於i=i+1
①“-”:可以表示減號,也可以表示負號。
②“+”:可以表示加法,也可以用於字元串的連接。
2)遞增(++)遞減(--)
i++等價於i=i+1,i--等價於i=i-1
9、關係運算
1)用於判斷數據之間的大小關係:“>”、“<”、“>=”、“<=”、“==”、“!=”
u 註意事項:“= =“比較的是值(忽略類型)。
2)關係表達式的值為boolean類型(“true”或“false”)
3)嚴格相等:“===”類型、數值都相同。
4)非嚴格相等:!==
例如:
var a = "10"; var b = 10; if(a == b) alert("equal"); if(a === b) alert("same");
10、邏輯運算
1)邏輯非(!)、邏輯(&&)、邏輯或(||)
2