欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js異或運(yùn)算符^小技巧分享

 更新時間:2023年04月22日 09:13:25   作者:Garrettzxd  
這篇文章主要介紹了js異或運(yùn)算符^小技巧,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

js異或運(yùn)算符^小技巧

這個運(yùn)算符主要是在位運(yùn)算的時候使用,但是在普通的數(shù)也能使用,且有一個轉(zhuǎn)換過程,即將二進(jìn)制的數(shù)轉(zhuǎn)換為十進(jìn)制

var a = 1 ^ 2;
//3
//1 -> 01
//2 -> 10
//1 ^ 2 -> 11 -> 3

如上所示,在十進(jìn)制進(jìn)行異或運(yùn)算符操作時也是OK的,結(jié)果顯示也是十進(jìn)制的結(jié)果,示例中的轉(zhuǎn)換過程只是我假象的轉(zhuǎn)換過程,只是便于理解,假設(shè)由十進(jìn)制到二進(jìn)制進(jìn)行異或運(yùn)算,再將結(jié)果轉(zhuǎn)換為十進(jìn)制,實際上的運(yùn)算并不一定是如此

利用異或運(yùn)算可以找出數(shù)組中奇?zhèn)€數(shù)的項

var a = [2,3,2,4,4];
for(let i = 0; i < a.length; i++) {
? ? a[0] = a[0] ^ a[i];
}
//a[0]為3,即單獨(dú)存在的一項

這里涉及到離散數(shù)學(xué)的異或運(yùn)算性質(zhì)了

  • 1.交換律:a ^ b ^ c  <=> a ^ c ^ b
  • 2.任何數(shù)于0異或為任何數(shù) 0 ^ n => n
  • 3.相同的數(shù)異或為0: n ^ n => 0

因此上面的例子2 ^ 3  ^ 2 ^ 4 ^ 4等價于  2 ^ 2  ^ 4 ^ 4 ^ 3  =>  0 ^ 0 ^3  => 3

js中的位運(yùn)算符(按位與、按位或、按位異或)使用

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script type="text/javascript">
        var a=1;
        var b=0;
 
        //按位與&:兩個操作數(shù)都是1,結(jié)果才是1
        alert(a&b) //結(jié)果是0
 
        //按位或:兩個操作數(shù)只要有一個是1,結(jié)果就是1
        alert(a|b)  //結(jié)果是1
 
        //按位異或:兩個數(shù)字一樣,結(jié)果為0;兩個數(shù)字不一樣,結(jié)果就是1。
        alert(a^b)  //結(jié)果是1
 
        //簡單的方法:數(shù)字求負(fù),在減1
        alert(~a)//結(jié)果是-2
 
    </script>
    <title>位運(yùn)算符</title>
</head>
<body>
 
</body>
</html>

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • JavaScript前端優(yōu)化策略深入詳解

    JavaScript前端優(yōu)化策略深入詳解

    在前端開發(fā)中,優(yōu)化頁面性能是非常重要的一個方面,頁面性能優(yōu)化可以提升網(wǎng)站的用戶體驗,加速頁面的加載速度,提高用戶的滿意度,本文講解了前端通用的優(yōu)化策略,需要詳細(xì)了解可以參考下
    2023-05-05
  • 微信js-sdk分享功能接口常用邏輯封裝示例

    微信js-sdk分享功能接口常用邏輯封裝示例

    這篇文章主要介紹了微信js-sdk分享功能接口常用邏輯封裝,簡單介紹了分享功能接口的功能、邏輯封裝與使用方法,需要的朋友可以參考下
    2016-10-10
  • ionic組件ion-tabs選項卡切換效果實例

    ionic組件ion-tabs選項卡切換效果實例

    這篇文章主要為大家詳細(xì)介紹了ionic組件ion-tabs選項卡切換效果實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • webpack proxy 使用(代理的使用)

    webpack proxy 使用(代理的使用)

    這篇文章主要介紹了webpack proxy 使用(代理的使用),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • JS函數(shù)的定義與調(diào)用方法推薦

    JS函數(shù)的定義與調(diào)用方法推薦

    下面小編就為大家?guī)硪黄狫S函數(shù)的定義與調(diào)用方法推薦。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-05-05
  • Javascript中的prototype與繼承

    Javascript中的prototype與繼承

    本文主要介紹了Javascript中的prototype與繼承,具有一定的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • onsubmit阻止form表單提交與onclick的相關(guān)操作

    onsubmit阻止form表單提交與onclick的相關(guān)操作

    return false會阻止表單提交,基本上關(guān)于onsubmit=return false有以下幾點(diǎn)要注意的地方,學(xué)習(xí)后臺編程的朋友一定要知道。
    2010-09-09
  • ECMAScript6--解構(gòu)

    ECMAScript6--解構(gòu)

    解構(gòu)就是將聲明的一組變量和與相同結(jié)構(gòu)的數(shù)組或者對象的元素數(shù)值一一對應(yīng),并將變量相對應(yīng)元素進(jìn)行賦值。本文將詳細(xì)介紹ECMAScript6--解構(gòu)的相關(guān)知識。下面跟著小編一起來看下吧
    2017-03-03
  • 微信小程序?qū)崿F(xiàn)多選框功能的實例代碼

    微信小程序?qū)崿F(xiàn)多選框功能的實例代碼

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)多選框功能及效果,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • js 計數(shù)排序的實現(xiàn)示例(升級版)

    js 計數(shù)排序的實現(xiàn)示例(升級版)

    這篇文章主要介紹了js 計數(shù)排序的實現(xiàn)示例(升級版),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01

最新評論