JS基礎入門篇(七)—運算符

1.算術運算符

1.算術運算符數組

  • 算術運算符:+*/%(取餘)++--
  • 重點:++--前置和後置的區別。

1.1 前置 ++ 和 後置 ++code

前置++:先自增值,再使用值
後置++:先使用值,再自增值ip

<script>
    console.log("-------- 後置++ ----------");
    var a=0;
    console.log(a++);//0,後置是先用值,在自增值。
    console.log(a);//1 自增後的值
    console.log("-------- 前置++ ----------");
    var b=2;
    console.log(++b);//3 前置是先自增,後用值。
    console.log(b);//3
    console.log("-------- 後置++ ----------");
    var d = 2;
    var e = d++;// 後置是先用值,在自增值。
    console.log( d,e );//3 2 
    console.log( "--------- 前置++ -------------" );
    var f = 20;
    var g = ++f;// 前置是先自增,後用值。
    console.log( f,g );//21 21;
</script>

2.賦值運算符

2.賦值運算符io

  • 賦值運算符:+=—=*,=/=%=
  • 計算完值後,並賦值給本身。

3.關係運算符

3.關係運算符console

  • <= , >= , == , != , === , !==
  • 注意:返回的值都是布爾值。

3.1 ===== 的區別function

  • == 進行比較的時候,會比較 二者的內容,不進行數據類型的比較
  • === 不只判斷內容 ,還會判斷 數據類型。
<script>
    console.log(1=="1");//true 只比較內容,內容相等故爲真。
    console.log(1==="1");//false 不只比較內容,還比較數據類型。數據類型不爲真,故假。
    console.log( 1 != "1" );//false
    console.log( 1 !== "1" );//true
</script>

3.2須要記憶的內容數據類型

<script>
    console.log( null == undefined );//true
    console.log( null == 0 );//false
    console.log( undefined == 0 );//false
</script>

4.邏輯運算符

  • && (而且)
    若是左邊爲真,返回右邊的值。
    若是左邊爲假,返回左邊的值。
  • || (或者)
    若是左邊爲真,返回左邊的值。
    若是左邊爲假,返回右邊的值
  • ! (否)
    後面的數轉成布爾值而後取反
<script>
    console.log( 1 && 2 );//2
    console.log( 0 && 2 );//0
    console.log( 0 && "a" );//0
    
    function fn(){
        console.log("fn執行了");
    }

    
    false && fn();//不執行fn();
    true && fn();//執行fn();
    undefined && fn();//不執行fn();

    console.log( 0 || 1 );//1
    console.log( 2 || 1 );//2
    
    var res = "a" || "b";
    console.log( res );//"a"

    console.log( !"false" );//"false"
</script>

5.三目運算符

三目運算符: 判斷條件 ? 語句 1 : 語句 2數據

判斷條件 成立 執行語句 1 
    不成立 執行語句 2

6.數組的存儲

數組賦值的時候,傳遞的是數組的地址。co

<script>
    var a = 1;
    var b = a; // 傳值,把a的值給b
    a = 2;
    console.log( b );//獲得的值是1.
//------------------------------------------
    var arr = ["a","b"];
    var res = arr;  // 傳址,賦址
    arr[0] = 1;
    console.log( arr );//根據地址找數組,獲得的是["1","b"]
    console.log( res );//根據地址找數組,獲得的是["1","b"]
//------------------------------------------
    var arr1 = ["a","b"];
    var res1 = ["a","b"]; 
    arr1[0] = 1;
    //arr1數組的地址和res1數組的地址不相同,雖然內容相同。
    console.log( arr1 );//根據地址找數組,獲得的是["1","b"]
    console.log( res1 );//根據地址找數組,獲得的是[a","b"]
</script>
相關文章
相關標籤/搜索