1. 程式人生 > >js初學-第一天

js初學-第一天

 

======================今日學習內容===================================

1、算數運算子
2、拓展賦值運算子
3、資料型別轉換
4、邏輯運算子
5、三目運算子
====================================================================

***------------------------------------------------------------------------------------------------------------------------------------------------------------
1、算數運算子
+ - * / %

(1)進行- * / 運算時,出現舍入誤差,toFixed(2)可舍入誤差,括號中的數值為期望保留的位數。

2 - 1.6 = 0.4[0.399999]
x.toFixed(2);
(2)++自增1 --自減1
無論++ 在後還是在前,只要其獨佔一行,結果為自增1。
如果不是獨佔一行,++ 在後時,在記憶體中自增1,但返回值為舊值;++ 在前時,在記憶體裡自增1,且返回值為新值。
ps:--的效果同上。

分析:
++ -- 多次運算在一行
如:i++ + ++i
如果++前 :1記憶體中變數值發生變化 2:返回新值
如果++後 :1記憶體中變數值發生變化 2:返回舊值

示例:
var i = 1;
document.write(i++);

頁面輸出為:1。

***------------------------------------------------------------------------------------------------------------------------------------------------------------

2、擴充套件賦值

+= ,-= ,*= ,/= ,%=

var a=1;
a+=1; //等同於a=a+1;
a-=1; //等同於a=a-1;
a*=1; //等同於a=a*1;
a/=1; //等同於a=a/1;
a%=1; //等同於a=a%1;

***------------------------------------------------------------------------------------------------------------------------------------------------------------

3、資料型別轉換
資料型別:number, string, boolean, null, undefined

(1).什麼是資料型別轉換?
允許資料在各個型別之間靈活的轉變
(2).隱式轉換
不需要人為參與,由程式自動完成

typeof(引數),該函式可以幫助檢視資料的型別

例:var a=10;
document.write(typeof(a));

頁面輸出為:number。

ps:NaN : Not a Number 不是一個數字
isNaN() : 是不是一個數字

例:isNaN("abc") : true //不是一個數字
isNaN(123) : false //是一個數字

***------------------------------------------------------------------------------------------------------------------------------------------------------------

4、強制資料型別轉換
(1)轉換函式

toString(引數) ;//j將資料轉換為字串,但只能轉換number,string,布林這三種類型的資料
例: var a = 123;
a.toString();
document.write(typeof(a));
頁面輸出為:string;

ps:String(x);比tostring(x);轉換範圍更廣。

(2)parseInt(引數)

將字串轉換為整數且只能取整(因為其不識別小數點,遇到小數點即當作非數字型字元而停止轉換),轉換時,若碰到的第一個字元是非數字型,則直接停止轉換,結果為NaN,意即這不是一個數字。
例parseInt("123"); --> 123
parseInt("123ABC"); --> 123
parseInt("123.456");--> 123
parseInt("ABC123"); --> NaN

(3)parseFloat(引數)
將字串轉換為小數,轉換規則同parseInt(引數),區別是該函式可識別小數點。

(4)Number(引數)
任意型別轉換成數字。

Number(引數);轉換規則較為嚴格。
Number(""); -->0
Number(true); -->1
Number(false); -->0
Number(null); --->0
Number("123"); --->123
Number("12ab");-->NaN {not a number}不是一個數字
Number(未定義);------->NaN

***------------------------------------------------------------------------------------------------------------------------------------------------------------

5、三目
一個判斷,兩種結果(結果只取其一)。

語句結構為:判斷表示式 ? 結果1 : 結果2;
#根據不同條件返回不同的值,或者執行不同
操作.

例:var i = 5;
var j = 2;
var rs = i < j ? "abc":"bcd";
document.write(rs);
頁面輸出為:bcd。