久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      JavaScript運(yùn)算符有幾種

      JavaScript運(yùn)算符有六種,分別是:1、算術(shù)運(yùn)算符,+、-、*等;2、等同全同運(yùn)算符,“==”、“===”等;3、比較運(yùn)算符,<、>等;4、字符串運(yùn)算符,<、>等;5、邏輯運(yùn)算符,“&&”、“!”等;6、賦值運(yùn)算符,=、“+=”等。

      JavaScript運(yùn)算符有幾種

      本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

      JavaScript中的運(yùn)算符有很多,主要分為算術(shù)運(yùn)算符,等同全同運(yùn)算符,比較運(yùn)算符,字符串運(yùn)算符,邏輯運(yùn)算符,賦值運(yùn)算符等。這些運(yùn)算符都有一些屬于自己的運(yùn)算規(guī)則,下面就為大家介紹一下JavaScript中的運(yùn)算符。

      一、JavaScript運(yùn)算符的種類

      1、算術(shù)運(yùn)算符:+ 、 – 、* 、 / 、 % 、 -(一元取反) 、 ++ 、 —

      2、等同全同運(yùn)算符:== 、 ===、 !== 、 !===

      3、比較運(yùn)算符:< 、 > 、 <= 、 >=

      4、字符串運(yùn)算符:< 、 > 、 <= 、 >= 、 = 、 +

      5、邏輯運(yùn)算符:&& 、 ||、 !、

      6、賦值運(yùn)算符:=、 +=、 *=、 -=、 /=

      二、JavaScript運(yùn)算符的規(guī)則

      1、算術(shù)運(yùn)算符規(guī)則

      “+”:可以進(jìn)行“加法”與“連接”運(yùn)算;如果2個(gè)運(yùn)算符中的一個(gè)是字符串,javascript就將另一個(gè)轉(zhuǎn)換成字符串,然后將2個(gè)運(yùn)算數(shù)連接起來(lái)。

      “+”:如果一個(gè)運(yùn)算數(shù)是對(duì)象,javascript就會(huì)將對(duì)象轉(zhuǎn)換成數(shù)字做加法運(yùn)算或者字符串做連接運(yùn)算;

      “-”“*”“/” 如果2個(gè)運(yùn)算數(shù)中的一個(gè)是是非數(shù)字,則將它轉(zhuǎn)化成數(shù)字執(zhí)行數(shù)學(xué)運(yùn)算。

      “/” 在javascript中,由于所有的數(shù)都是浮點(diǎn)數(shù),除法的結(jié)果都是浮點(diǎn)數(shù),5 / 2 = 2.5 ;除數(shù)為0的結(jié)果為正負(fù)無(wú)窮;0/0為NaN;

      “%”模運(yùn)算符:計(jì)算第一個(gè)運(yùn)算數(shù)對(duì)第二個(gè)運(yùn)算數(shù)的模,就是第一個(gè)運(yùn)算數(shù)被第二個(gè)運(yùn)算數(shù)除時(shí),返回余數(shù)。如果運(yùn)算數(shù)是非數(shù)字的,則轉(zhuǎn)換成數(shù)字。

      “-”一元取反:將運(yùn)算數(shù)取反,如果運(yùn)算數(shù)不是數(shù)字,則轉(zhuǎn)化成數(shù)字。

      “++”“–”增量運(yùn)算符/減量運(yùn)算符號(hào):運(yùn)算數(shù)必須是一個(gè)變量、樹組的一個(gè)元素或?qū)ο蟮囊粋€(gè)屬性。如果運(yùn)算數(shù)不是數(shù)字,則轉(zhuǎn)換成數(shù)字。

      注意:如果“++”位于運(yùn)算數(shù)之前,先對(duì)運(yùn)算數(shù)進(jìn)行增量,然后計(jì)算運(yùn)算數(shù)增長(zhǎng)后的值。

      如果“–”位于運(yùn)算數(shù)之后,先計(jì)算運(yùn)算數(shù)未增長(zhǎng)之前的值,然后對(duì)運(yùn)算數(shù)增量。

      例如:i = 1; //賦值給i值1

      j = ++i; //先將i增量為2,然后將2賦值給j,i的值是2,j的值也是2。

      i = 1; //賦值給i值1

      j = i++; //先將i賦值給j,然后對(duì)將i值增量到2,i的值是2,j的值是1。

      減量運(yùn)算符“–”與“++”相同。

      2、等同運(yùn)算符與全同運(yùn)算符

      (I)“==”“!==”等同運(yùn)算符與非等同運(yùn)算符:

      比較2個(gè)運(yùn)算數(shù),返回一個(gè)不布爾值。

      比較數(shù)值、字符串、布爾值使用的都是量值。當(dāng)且僅當(dāng)兩個(gè)變量存放的值相等的時(shí)候,他們才相等。

      比較對(duì)象、數(shù)組、函數(shù)的時(shí)候,使用的是引用,只有2個(gè)變量引用的是同一個(gè)對(duì)象時(shí),他們才是相等的。兩個(gè)不同的數(shù)組是完全不同的,即使他們具有完全相同的元素。對(duì)于存放對(duì)象、數(shù)組、函數(shù)的引用的變量來(lái)說(shuō),只有當(dāng)他們引用的是同一個(gè)對(duì)象、數(shù)組、函數(shù)的時(shí)候,他們才相等。

      注意!應(yīng)遵循的原則:

      當(dāng)兩個(gè)運(yùn)算數(shù)的類型不同時(shí):將他們轉(zhuǎn)換成相同的類型,

      1)一個(gè)數(shù)字與一個(gè)字符串,字符串轉(zhuǎn)換成數(shù)字之后,進(jìn)行比較。

      2)true轉(zhuǎn)換為1、false轉(zhuǎn)換為0,進(jìn)行比較。

      3)一個(gè)對(duì)象、數(shù)組、函數(shù) 與 一個(gè)數(shù)字或字符串,對(duì)象、數(shù)組、函數(shù)轉(zhuǎn)換為原始類型的值,然后進(jìn)行比較。(先使用valueOf,如果不行就使用toString)

      4)其他類型的組合不星等。

      想兩個(gè)運(yùn)算數(shù)類型相同,或轉(zhuǎn)換成相同類型后:

      1)2個(gè)字符串:同一位置上的字符相等,2個(gè)字符串就相同。

      2)2個(gè)數(shù)字:2個(gè)數(shù)字相同,就相同。如果一個(gè)是NaN,或兩個(gè)都是NaN,則不相同。

      3)2個(gè)都是true,或者2個(gè)都是false,則想同。

      4)2個(gè)引用的是同一個(gè)對(duì)象、函數(shù)、數(shù)組,則他們相等,如果引用的不是同一個(gè)對(duì)象、函數(shù)、數(shù)組,則不相同,即使這2個(gè)對(duì)象、函數(shù)、數(shù)組可以轉(zhuǎn)換成完全相等的原始值。

      5)2個(gè)null,或者2個(gè)都是未定義的,那么他們相等。

      “!=”非等同運(yùn)算符:與等同運(yùn)算符檢測(cè)的結(jié)果相反。

      (II)“===”“!===”全同運(yùn)算符與非全同運(yùn)算符號(hào):

      全同運(yùn)算符遵循等同運(yùn)算符的比較規(guī)則,但是它不對(duì)運(yùn)算數(shù)進(jìn)行類型轉(zhuǎn)換,當(dāng)兩個(gè)運(yùn)算數(shù)的類型不同時(shí),返回false;只有當(dāng)兩個(gè)運(yùn)算數(shù)的類型相同的時(shí)候,才遵循等同運(yùn)算符的比較規(guī)則進(jìn)行比較。

      “!==”非全同運(yùn)算符與全同運(yùn)算符比較的結(jié)果相反。如果兩個(gè)運(yùn)算數(shù)的類型或者值不同的時(shí)候,返回true。

      3、比較運(yùn)算符

      這些比較運(yùn)算符用于比較不同類型的值,結(jié)果返回一個(gè)布爾值。

      “<”“>”“<=”“>=”

      注意規(guī)則:比較的運(yùn)算數(shù)可以是任意類型的,但是只能在數(shù)字和運(yùn)算數(shù)上執(zhí)行。不是數(shù)字和字符串的運(yùn)算數(shù)將被轉(zhuǎn)換成數(shù)字或字符串。

      1)如果兩個(gè)運(yùn)算數(shù)都是數(shù)字,或者都可以轉(zhuǎn)換成數(shù)字,則按照數(shù)字的大小進(jìn)行比較;

      2)如果兩個(gè)運(yùn)算數(shù)都是字符串,或者都可以轉(zhuǎn)換成字符串,則將按照字母順序進(jìn)行比較;

      3)如果字符串遇到數(shù)字,則將字符串轉(zhuǎn)換成數(shù)字進(jìn)行比較。

      4)如果運(yùn)算數(shù)既不能轉(zhuǎn)換成數(shù)字,也不能轉(zhuǎn)換成字符串,則返回結(jié)果false。

      4、字符串運(yùn)算符

      并沒(méi)有專用的字符串運(yùn)算符,只是有些運(yùn)算符在遇到字符串運(yùn)算數(shù)的時(shí)候,表現(xiàn)不同。

      (I)“+”連接2個(gè)字符串;

      1)當(dāng)2個(gè)運(yùn)算數(shù)都是字符串的時(shí)候,連接起來(lái);

      2)當(dāng)其中有一個(gè)是數(shù)字的時(shí)候,將數(shù)字轉(zhuǎn)換成字符串,連接起來(lái);

      (II)“>”這樣的比較運(yùn)算符通過(guò)比較確認(rèn)兩個(gè)字符串的順序,比較采用字符的順序,較小的位于教大的前面,大寫字母位于小寫字母之前。

      (III)“+”的作用方法取決于計(jì)算順序,

      如:s = 1 + 2 +"var" 則:返回結(jié)果3var; 因?yàn)橄扔?jì)算1+2,然后將結(jié)果3轉(zhuǎn)換成字符串與"var"連接;

      如:s = "var" + 1 + 2 則:返回結(jié)果var12; 因?yàn)橄扔?jì)算var與1的連接,在將結(jié)果var1與轉(zhuǎn)換成字符串的2連接起來(lái)。

      5、邏輯運(yùn)算符

      用于執(zhí)行布爾運(yùn)算,常常和比較運(yùn)算符一起使用,來(lái)表示復(fù)雜的比較運(yùn)算。

      “&&” 邏輯與運(yùn)算、“||”邏輯或運(yùn)算符、“!”邏輯非運(yùn)算符

      (I)“&&”當(dāng)兩個(gè)運(yùn)算數(shù)都是布爾值的時(shí)候,邏輯與對(duì)他們進(jìn)行and操作,即:當(dāng)且僅當(dāng)兩個(gè)布爾值都是true的時(shí)候,返回結(jié)果true,否則返回false。

      注意:實(shí)際表現(xiàn)

      “&&”將檢測(cè)第一個(gè)表達(dá)式運(yùn)算數(shù)布爾值,如果第一個(gè)運(yùn)算數(shù)表達(dá)式返回false,則返回左邊第一個(gè)運(yùn)算數(shù)表達(dá)式的值:false;否則將繼續(xù)檢測(cè)第二個(gè)即右邊的運(yùn)算數(shù)表達(dá)式,然后返回第二個(gè)運(yùn)算數(shù)表達(dá)式的值;

      例如:if (a = b) stop(); 與 (a = b) && stop(); 等價(jià)

      不贊成使用這個(gè)方法,因?yàn)檫\(yùn)算符右邊的代碼不能保證會(huì)被執(zhí)行,

      例如:if ((a < b) && (b++ <10) ) stop();如果運(yùn)算符右邊的增量必須的話,卻有可能由于前面的返回值而不被執(zhí)行,一般反對(duì)在&&的右邊使用具有其他作用的表達(dá)式(賦值、函數(shù)調(diào)用、增減量);

      將“&&”看作是一個(gè)布爾代數(shù)的運(yùn)算符,會(huì)更簡(jiǎn)單與安全。

      (II)“||”當(dāng)兩個(gè)運(yùn)算數(shù)都是布爾值的時(shí)候,邏輯或?qū)λ麄冞M(jìn)行or操作,即:當(dāng)兩個(gè)布爾值有一個(gè)是true的時(shí)候,返回結(jié)果true,否則返回false。

      注意:實(shí)際表現(xiàn)

      “||”將檢測(cè)第一個(gè)表達(dá)式運(yùn)算數(shù)布爾值,如果第一個(gè)運(yùn)算數(shù)表達(dá)式返回true,則返回左邊第一個(gè)運(yùn)算數(shù)表達(dá)式的值:true;否則將繼續(xù)檢測(cè)第二個(gè)即右邊的運(yùn)算數(shù)表達(dá)式,然后返回第二個(gè)運(yùn)算數(shù)表達(dá)式的值;

      同樣不贊成使用這個(gè)方法,因?yàn)檫\(yùn)算符右邊的代碼不能保證會(huì)被執(zhí)行,

      一般反對(duì)在||的右邊使用具有其他作用的表達(dá)式(賦值、函數(shù)調(diào)用、增減量);

      將“||”看作是一個(gè)布爾代數(shù)的運(yùn)算符,會(huì)更簡(jiǎn)單與安全。

      (III)“!”邏輯非是一個(gè)一元運(yùn)算符,放在運(yùn)算數(shù)之前,它的目的是對(duì)運(yùn)算數(shù)取反。

      6、賦值運(yùn)算符

      (I)“=”是賦值運(yùn)算符;他總是期望左邊的運(yùn)算數(shù)是一個(gè)變量、數(shù)組的一個(gè)元素或?qū)ο蟮囊粋€(gè)屬性;

      期望右邊是一個(gè)任意類型的任意的值;

      從右到左的結(jié)合性,如果一個(gè)表達(dá)式中有多個(gè)賦值運(yùn)算符,則從最右邊開始計(jì)算。

      注意:每一個(gè)賦值表達(dá)式都有一個(gè)值,就是運(yùn)算符右邊的值;

      (II)可以使用帶操作的賦值運(yùn)算

      “+=” 左邊的值加上右邊的值后,賦值于左邊的值。“-=”“/=”“*=”方法一樣;

      7、其他運(yùn)算符

      “?:”條件運(yùn)算符是唯一的一個(gè)三元運(yùn)算符;

      一個(gè)表達(dá)式的布爾結(jié)果?表達(dá)式1(任意類型的任意值):表達(dá)式2(任意類型的任意值);

      根據(jù)第一個(gè)運(yùn)算數(shù)的布爾值結(jié)果,如果為true,則執(zhí)行第二個(gè)運(yùn)算數(shù)表達(dá)式,返回第二個(gè)運(yùn)算數(shù)表達(dá)式的值;如果第一個(gè)運(yùn)算數(shù)的布爾值結(jié)果是false,則執(zhí)行第三個(gè)運(yùn)算數(shù)表達(dá)式,返回第三個(gè)運(yùn)算數(shù)表達(dá)式的值。

      三、JavaScript運(yùn)算符的注意

      1、要注意傳遞給運(yùn)算符的數(shù)據(jù)類型和返回的數(shù)據(jù)類型!不同的運(yùn)算符都期望它的運(yùn)算數(shù)表達(dá)式計(jì)算出的結(jié)果符合某種數(shù)據(jù)類型。

      例如:對(duì)字符串是不能進(jìn)行乘法運(yùn)算的,"a" * "b" 是不合法的,但是,在可能的情況下,javascript會(huì)把表達(dá)式轉(zhuǎn)換成正確的類型,因此,表達(dá)式 "3" * "5" 是合法的,javascript將字符串轉(zhuǎn)換成數(shù)字執(zhí)行運(yùn)算,結(jié)果返回的是數(shù)字15,而不是字符串"15"。

      2、+ 根據(jù)運(yùn)算數(shù)的不同,具有不同的表現(xiàn):

      字符串 + 字符串 = 字符串(被連接);"a" + "b" = "ab" "5" + "6" = "11"

      字符串 + 數(shù)字 = (字符串轉(zhuǎn)換成數(shù)字)字符串(被連接);"a" + 5 = "a5" 5被轉(zhuǎn)換成字符串 "1" + 0 = "10"

      數(shù)字 + 數(shù)字 = 數(shù)字(相加)5 + 5 = 10。

      3、注意運(yùn)算符的結(jié)合性,有些運(yùn)算符從左到右的結(jié)合性;有些從右到左結(jié)合性。

      例如:w = a + b + c 等同于 w = (a + b) + c;

      w = —b 等同于 w = – ( – ( -b ) ); w = a = b = c 等同于 w= ( a = ( b = c ))

      一元運(yùn)算符、賦值運(yùn)算符、三元運(yùn)算符的結(jié)合性是從右到左的;

      【推薦學(xué)習(xí):javascript高級(jí)教程】

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)