九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
JavaScript中的運(yùn)算符和語句

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

  

  a、基本的算術(shù)運(yùn)算符(+、-、*、/、%)

  -、*、/、%運(yùn)算符會(huì)在必要的時(shí)候?qū)⒉僮鲾?shù)轉(zhuǎn)換為數(shù)字,無法轉(zhuǎn)換成數(shù)字的操作數(shù)將會(huì)轉(zhuǎn)換成NaN,相應(yīng)的運(yùn)算結(jié)果也是NaN。

  JavaScript中所有的數(shù)都是浮點(diǎn)型的,所以除法的運(yùn)算結(jié)果也是浮點(diǎn)型的。5/2=2.5;

  %運(yùn)算符返回結(jié)果符號(hào)與被除數(shù)一致。-5%2=-1;5%-2=1

  二元加法運(yùn)算符可以對兩個(gè)數(shù)字做加法運(yùn)算,也可以連接字符串。兩個(gè)操作數(shù)中只要一個(gè)是字符串或者可以轉(zhuǎn)換是可以轉(zhuǎn)成字符串的對象,則進(jìn)行字符串連接。

  兩個(gè)操作數(shù)中有一個(gè)為對象時(shí),日期對象通過toString()方法轉(zhuǎn)換到原始值然后進(jìn)行字符串連接。其他對象通過先valueOf()、toString()方法得到原始值和另一個(gè)操作數(shù)結(jié)合。 

1 console.log(1+2+'2');//"32"2 console.log(1+(2+'2'));//"122"3 console.log(null+"1");//"null1"4 console.log(null+1);//1

 

  b、一元運(yùn)算符(+、-,++、--)

  一元運(yùn)算符(+、-)把操作數(shù)轉(zhuǎn)換成數(shù)字(或者NaN),并返回這個(gè)數(shù)值。++、--運(yùn)算符的操作數(shù)是一個(gè)左值(只能出現(xiàn)在賦值運(yùn)算符的左邊)(變量、數(shù)組元素、對象屬性)

1 console.log(+null);//02 console.log(-undefined);//NaN3 var i=1,j=i++;  //i=1;j=24 var i=1;j=++i;  //i=2,j=2

 

  c、關(guān)系運(yùn)算符(返回結(jié)果總是布爾值)

  ==(相等)、!=  比較時(shí)允許類型轉(zhuǎn)換

  ===(恒等) 、!==   不允許類型轉(zhuǎn)化

  ===幾個(gè)特例:null和undefined不相等、0和-0相等、NaN和任何數(shù)都不等(包括自己),兩個(gè)引用指向同一個(gè)對象時(shí)相等。

  == 幾個(gè)特例:null==undefined,對象和字符串比較,調(diào)用valueOf()、toString()方法轉(zhuǎn)成成原始值比較。日期對象調(diào)用toString()方法轉(zhuǎn)換。  

          兩個(gè)操作數(shù)類型相同的時(shí)候直接比較,兩個(gè)操作數(shù)類型不同時(shí)轉(zhuǎn)換成數(shù)字進(jìn)行比較。

1 var now=new Date();2 console.log(now==now.toString());//true

   >、>=、<、<=比較的操作數(shù)可能是任意類型的,但是只有是數(shù)字、字符串才能比較(根據(jù)字符在Unicode編碼表中的順序)。兩個(gè)操作數(shù)只要有一個(gè)不是字符串,則轉(zhuǎn)換成數(shù)字比較。

   對象的轉(zhuǎn)換規(guī)則:先使用valueOf()獲取原始值,賦值使用toString()方法。

  Infinity比任何數(shù)都大、-Infinity比任何數(shù)都笑,0和-0相等,NaN和任何數(shù)比較都返回false;

1 console.log('one'<3);//false  'one'轉(zhuǎn)成數(shù)字是NaN2 console.log('1'<3);//true

  d、in運(yùn)算符

  in運(yùn)算符的左操作數(shù)是一個(gè)字符串或者可以轉(zhuǎn)換成字符串。右操作數(shù)是一個(gè)對象。in運(yùn)算符用來判斷做操作數(shù)是不是對象的屬性(包含原型上的 )。

1 var o={x:1,y:2};2 console.log('x' in o);//true 3 console.log("toString" in o);//true4 console.log('z' in o);//false5 6 var  arr=[1,3];7 console.log(0 in arr);//true8 console.log('3' in arr);//false

  e、instanceof運(yùn)算符

  instanceof運(yùn)算符的做操作數(shù)是對象,右操作數(shù)是構(gòu)造函數(shù)。如果對象的原型是構(gòu)造函數(shù)的prototype屬性(包含父鏈),則返回true; 

1 var o={x:1,y:2};2 console.log(o instanceof Object);//true

 

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

  &&、||、!  (與或非)  當(dāng)操作數(shù)都是布爾值時(shí),返回的是布爾值

  &&、||當(dāng)操作數(shù)中有不是布爾值的,返回值不一定是布爾值;a&&b,當(dāng)a是真的時(shí)候,直接返回b的值,當(dāng)a是假的時(shí)候,直接返回 b;a||b,a為真,返回的a,a為假,返回b;

  !運(yùn)算符的結(jié)果總是布爾值,?。可以用來判斷x的真假。

  if(a>b) a++;等價(jià)于 (a>b)&&(a++);

  function(o,p){

    p=p||{};//如果不給p傳值,則p的值為空對象。

  }

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

  var i=1;

  a=b=0;//給多個(gè)變量賦值

  a+=b//a=a+b 其他的類似

 h、eval()函數(shù)

  eval()是JavaScript中的全局函數(shù),接受一個(gè)參數(shù),如果參數(shù)不是字符串,直接返回參數(shù),如果是字符串,字符串會(huì)被當(dāng)成JavaScript源代碼執(zhí)行,編譯失敗會(huì)報(bào)錯(cuò),編譯成功執(zhí)行改代碼,并返回最后一條語句的值,如果最后的語句沒有值,返回undefined。

  eval('2+3');//5

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

  1、三目運(yùn)算符(第一個(gè)表達(dá)式的值為真,:前代碼被執(zhí)行,否則執(zhí)行:后的代碼)

1  x>0?x:-x;  //求x的絕對值

 

  2、typeof運(yùn)算符

  typeof是一個(gè)一元運(yùn)算符,操作數(shù)可以是任意類型的。返回下列的一個(gè)字符串。

  

  3、delete運(yùn)算符

  delete 運(yùn)算符用來刪除對象的屬性,刪除成功返回true;delete運(yùn)算的屬性時(shí)一個(gè)左值,如果不是左值,則返回true,不進(jìn)行其他操作。  

1 var o={x:2}2 console.log(delete o.x);//true3 console.log(o.x);//undefined

  4、void運(yùn)算符

  void運(yùn)算符是一個(gè)一元運(yùn)算符,出現(xiàn)在操作數(shù)之前,操作數(shù)可以是任意類型,操作照常進(jìn)行,但是會(huì)返回undefined。

1 var a=void 2;2 console.log(a); //undefined

  5,逗號(hào)運(yùn)算符

  逗號(hào)運(yùn)算符是一個(gè)二元運(yùn)算符,它會(huì)先計(jì)算左操作數(shù),在計(jì)算右操作數(shù),最終返回有操作數(shù)。  

1 var i,j,k;2 var a=(i=1,j=2,k=3);3 console.log(a); //3

二、JavaScript中常見的語句. 

  JavaScript中的語句是以分號(hào)結(jié)束的,表達(dá)式計(jì)算出一個(gè)值,但語句用來執(zhí)行以使某個(gè)事件發(fā)生。

  a、空語句

  空允許沒有內(nèi)容,只有分號(hào),當(dāng)創(chuàng)建一個(gè)具有空循環(huán)體的循環(huán)時(shí),空語句很有用。 

1 var  arr=[];2 //初始化一個(gè)數(shù)組3 for(var i=0;i<4;arr[i++]=0){4     ;5 }

 

  b、聲明語句

  1、var語句

  var語句用來聲明變量,可以一次聲明一個(gè)變量,也可以一次聲明多個(gè)變量。用var聲明的全局變量無法通過delete運(yùn)算符刪除。

  var i; //聲明一個(gè)變量

  var i=1,j=2;//聲明多個(gè)變量并初始化

  同時(shí),var語句可以用在循環(huán)體內(nèi);

  for(var i=0;i<3;i++){  }//相當(dāng)于var i; for(i=0;i<3;i++){ }

  for(var i in o){

    console.log(i)

  }

  2、function

  function關(guān)鍵字用來聲明一個(gè)函數(shù),函數(shù)可以寫成表達(dá)式的形式;也可以寫成語句的形式。  

1 //語句2 function abc(){3 4 }5 //表達(dá)式6 var a=function(){7      8 }

  函數(shù)聲明語句可以出現(xiàn)在最頂層代碼中,也可以出現(xiàn)在函數(shù)體內(nèi)。函數(shù)聲明語句只能出現(xiàn)在函數(shù)的最頂層,函數(shù)定義不可以出現(xiàn)在while、if或其他循環(huán)語句中。

  函數(shù)聲明語句和表達(dá)式包含相同的函數(shù)名,但兩者仍有區(qū)別 ,兩者都創(chuàng)建了新的函數(shù)對象。但是函數(shù)聲明語句中的函數(shù)名是一個(gè)變量,變量指向函數(shù)對象,函數(shù)定義語句被顯式的提前到腳本或者函數(shù)的頂部,在整個(gè)腳本或函數(shù)中是可以見,var聲明的函數(shù),只有變量聲明提前,函數(shù)必須在其后調(diào)用;  

1 a();//報(bào)錯(cuò)2 var a=function(){3     console.log(123);4 }

  3、條件語句

  if(表達(dá)式){

    //true執(zhí)行這個(gè)語句塊

  }else{

    //false 執(zhí)行這個(gè)語句塊

  }

  switch語句

  

    while語句

     while(表達(dá)式){

      //如果表達(dá)式的結(jié)果為真,一直執(zhí)行該代碼。

    }

      do/while語句

    do{

      //先執(zhí)行一次,再根據(jù)表達(dá)式的值執(zhí)行循環(huán)

    }while(表達(dá)式);

   for()循環(huán)

   for(初始化變量的值;循環(huán)條件;變量重新賦值){

    //先執(zhí)行初始化,然后判斷條件,重新賦值,然后判斷條件,重新賦值。。。。

    }

   for/in

   for(var p in object){

      //遍歷變量的可枚舉屬性(包含原型鏈上的 )

    }

   4、跳轉(zhuǎn)語句

   break

   break語句用于跳出最內(nèi)層循環(huán)或者switch語句。

   continue

   continue語句用于跳過本次循環(huán),執(zhí)行下一次循環(huán)。

   return 語句

   return語句用來指定函數(shù)調(diào)用時(shí)的返回值,return語句只出現(xiàn)在函數(shù)內(nèi)部,當(dāng)遇到return語句是,函數(shù)執(zhí)行終止。如果return語句沒有表達(dá)式,或者函數(shù)沒有return語句,則調(diào)用時(shí)的返回值時(shí)undefined。

   throw 語句,

   throw語句用于顯示拋出一個(gè)錯(cuò)誤,如果找不到最近的異常處理程序,JavaScript會(huì)把異常當(dāng)做程序錯(cuò)誤處理。 

   throw expression中expression的值可以是任意類型的,可以拋出一個(gè)錯(cuò)誤碼數(shù)字或者一個(gè)可讀的錯(cuò)誤消息的字符串?!?/span>

     try/catch/finally語句

    try/catch/finally語句用于捕獲代碼中的異常,finally中代碼肯定會(huì)執(zhí)行。

    

     

1 var a=function(){2     try{3         throw new Error('代碼出現(xiàn)錯(cuò)誤');4     }catch(e){5         console.log(e.message);6     }7 }8 a();//'代碼出現(xiàn)錯(cuò)誤'

  5、其他語句

  with語句

   with語句用來臨時(shí)擴(kuò)展作用域。

    with(obj){

        語句

    }

    把obj對象添加到作用域的頭部。執(zhí)行完代碼塊中的代碼,把作用域鏈恢復(fù)原狀。

   

    "use strict"語句

     "use strict" 對腳本和函數(shù)啟動(dòng)嚴(yán)格模式 

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
第三講 JavaScript基本語法
JavaScript權(quán)威指南第6版
JavaScript基本語法(全)
JavaScript基礎(chǔ)
JavaScript操作符
第三章 VB語言基礎(chǔ)_Visual Basic基礎(chǔ)_
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服