激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频

JavaScript 學(xué)習筆記:操作符

時(shí)間:2024-08-13 00:53:07 JavaScript 我要投稿
  • 相關(guān)推薦

JavaScript 學(xué)習筆記:操作符

  一、一元操作符

JavaScript 學(xué)習筆記:操作符

  1、自增自減操作符:分為前置型和后置型;

  前置型:++a;--a;

  后置型:a++;a--;

  例:

  復制代碼 代碼如下:

  

  其中a=i++,相當于a=i;i=i+1;

  而b=++j,相當于j=j+1;b=j;

  2、一元加減操作符:a=+i;a=-i;

  復制代碼 代碼如下:

  

  對整數而言,一元減相當于取負數。

  二、位操作符

  1、按位非~ (NOT)

  非,即按二進(jìn)制形式將所有數字取反。

  常見(jiàn)用法:位運算 NOT 實(shí)質(zhì)上是對數字求負,然后減 1

  2、按位或| (OR)

  或,即按二進(jìn)制形式將所有的數字與目標數字按位進(jìn)行或操作。

  常見(jiàn)用法:通常用于二進(jìn)制數字的無(wú)條件賦值。例如:一個(gè)數字|1,相當于與獲取與當前數字最接近的奇數。

  3、按位與& (AND)

  與,即按二進(jìn)制形式將所有的數字與目標數字按位進(jìn)行與操作。

  常見(jiàn)用法:通常用于二進(jìn)制的取位操作,例如:一個(gè)數字&1,如果結果為0則為偶數,如果為1則為奇數。

  4、按位異或^ (XOR)

  異或,即按二進(jìn)制形式將所有數字與目標數字對比,只有兩個(gè)數字不相同即只有一個(gè)數位存放的是1的時(shí)候返回1,如兩個(gè)數字相同返回0.

  常見(jiàn)用法:xor運算的逆運算是它本身,也就是說(shuō)兩次異或同一個(gè)數最后結果不變?梢杂糜诤(jiǎn)單的加密,或交互數值操作。

  5、左移<<

  左移,即按二進(jìn)制形式把所有的數字向左移動(dòng)對應的位數,高位移出(舍棄),低位的空位補零。左移不會(huì )影響符號位。

  數學(xué)意義:在數字沒(méi)有溢出的前提下,對于正數和負數,左移一位都相當于乘以2的1次方,左移n位就相當于乘以2的n次方。

  6、右移

  6.1有符號的右移>>:即按二進(jìn)制形式把所有的數值向右移動(dòng)但是保留符號位。

  數學(xué)意義:在數字沒(méi)有溢出的前提下,對于正數和負數,右移一位都相當于除以2的1次方,右移n位就相當于除以2的n次方。

  6.2無(wú)符號的右移>>>:即按二進(jìn)制形式把所有的數值,包括符號位都向右移動(dòng)。

  對于正數來(lái)說(shuō)>>和>>>的結果是一樣的;

  對負數來(lái)說(shuō),由于負數以其絕對值的補碼形式表示,因此會(huì )導致無(wú)符號右移結果非常大。

  三、布爾操作符

  1、邏輯非 !

  邏輯非用!表示,可以應用與ECMAScript的任何類(lèi)型的值,邏輯非操作返回的是一個(gè)布爾值(true/false)。該操作符首先會(huì )將它的操作數轉換為一個(gè)布爾值,然后再對其求反.

 。!相當于Boolean()函數。

  Boolean()轉型函數的一組規則。

  數據類(lèi)型轉換為true的值轉換為false的值

  Booleantruefalse

  String任何非空字符串""(空字符串)

  Number任何非零數字值(包括無(wú)窮大)0和NaN

  Object任何對象null

  Undefined 無(wú)undefined

  2、邏輯與&&

  邏輯與有兩個(gè)操作數。

  邏輯與操作可以應用于任何類(lèi)型的操作數,而不僅僅是布爾值。在有一個(gè)操作數不是布爾值的情況下,邏輯與操作就不一定返回布爾值;此時(shí),它遵循一下規則:

  1. 如果第一個(gè)操作數是對象,則返回第二個(gè)操作數;

  2. 如果第二個(gè)操作數是對象,則只有在第一個(gè)操作數的求值結果為true的情況下才會(huì )返回該對象;

  3. 如果兩個(gè)操作符都是對象,則返回第二個(gè)操作數; 遵循第一規則。

  4. 如果有一個(gè)操作數是null,則返回null;

  5. 如果有一個(gè)操作數是NaN,則返回NaN;

  6. 如果有一個(gè)操作數是undefined,則返回undefined。

  邏輯與操作屬于短路操作,即如果第一操作數能夠決定結果,那么就不會(huì )再對第二個(gè)操作數求值。(可以理解為內部的兩個(gè)return操作)。因此當4、5、6規則沖突時(shí),遵循短路操作原則。

  復制代碼 代碼如下:

  var nul = null;

  var na = NaN;

  var test;

  test = na&&nul;

  document.write(test); //NaN

  復制代碼 代碼如下:

  var nul = null;

  var na = NaN;

  var test;

  test = nul&&na;

  document.write(test); //null

  3、邏輯或||

  邏輯或有兩個(gè)操作數。

  邏輯或與邏輯與相似,操作可以應用于任何類(lèi)型的操作數,而不僅僅是布爾值。在有一個(gè)操作數不是布爾值的情況下,邏輯或操作就不一定返回布爾值;此時(shí),它遵循一下規則:

  1. 如果第一個(gè)操作數是對象,則返回第一個(gè)操作數;

  2. 如果第一個(gè)操作數的結果是false,則返回第二個(gè)操作數;

  3. 如果兩個(gè)操作符都是對象,則返回第一個(gè)操作數,遵循第一條規則。

  4. 如果兩個(gè)操作數都是null,則返回null;

  5. 如果兩個(gè)操作數都是NaN,則返回NaN;

  6. 如果兩個(gè)操作數都是undefined,則返回undefined。

  邏輯或操作屬于短路操作,即如果第一操作數結果為true,那么就不會(huì )再對第二個(gè)操作數求值。

  我們可以利用邏輯或的這個(gè)特性來(lái)避免為變量賦null或undefined的值

  例如:var myObject = firstObject||secondObject

  如果firstObject不是null,則firstObject被賦值給myObject,否則將secondObject的值賦給myObject.

【JavaScript 學(xué)習筆記:操作符】相關(guān)文章:

JavaScript學(xué)習筆記08-24

關(guān)于數據類(lèi)型的Javascript學(xué)習筆記08-05

整理Javascript基礎語(yǔ)法學(xué)習筆記欣賞08-04

JavaScript學(xué)習歷程和心得范文(精選10篇)02-13

對javascript的理解08-08

常用的JavaScript模式09-22

Javascript的this用法簡(jiǎn)述08-15

JavaScript 基礎教學(xué)09-29

JavaScript的課堂講解09-03

淺談如何深入學(xué)習Javascript中的this關(guān)鍵字08-19

激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频