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

js隱式轉(zhuǎn)換的知識(shí)實(shí)例講解

 更新時(shí)間:2018年09月28日 15:05:00   投稿:laozhang  
在本篇文章中,小編給大家分享了關(guān)于js隱式轉(zhuǎn)換的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們參考學(xué)習(xí)下。

開胃菜

[] == ![]         //true ==> "" == false
123 ^ []          //123  ==> 123 ^ 0
~{}            //-1  ==> ~0
{} >= {1,2}        //true ==>因?yàn)榇笥诘扔诘谋容^,不是相等的比較,所以[object Object] >=[object Object]
[null] == ""        //true ==> [""] == ""

值得注意的操作符:

一元操作符:通過Number()進(jìn)行轉(zhuǎn)換;其中包括*號(hào)運(yùn)算符,/號(hào)運(yùn)算符,都是經(jīng)Number()轉(zhuǎn)換

+undefined  //NaN

邏輯運(yùn)算符:!等價(jià)于Boolean(),將操作數(shù)進(jìn)行布爾值類型轉(zhuǎn)換

位操作:~, |, &, ^;當(dāng)一邊操作數(shù)為NaN時(shí),可等價(jià)于操作數(shù)為0;

//由以下變化可以證得:
NaN ^ NaN ^ NaN = 0

加號(hào)運(yùn)算符,比較復(fù)雜

優(yōu)先級(jí)最高的是字符串,任何操作數(shù)與字符串相加都將其String(x)成字符串,再進(jìn)行字符串拼接

console.log("a" + 1);      //"a1"
console.log("a" + "1");     //"a1"
console.log("a" + false);    //"afalse"
console.log("a" + undefined);  //"aundefined"
console.log("a" + NaN);     //"aNaN"
console.log("a" + null);    //"anull"
console.log("a" + {});     //"a[object Object]"

其次number,而object在正常情況下輸出的就是string類型

//console.log(1 + "1");   //"11"
console.log(1 + 1);     //2
console.log(1 + true);   //2 
console.log(1 + undefined); //NaN
console.log(1 + NaN);    //NaN
console.log(1 + null);   //1
console.log(1 + {});    //"1[object,Object]"

當(dāng)一方為Boolean,或者兩方都是Boolean時(shí),都將其進(jìn)行Number處理,同理undefined與null也一樣

console.log(true + true);   //2 
console.log(true + undefined); //NaN
console.log(true + NaN);    //NaN
console.log(true + null);   //1
console.log((true + [NaN]));  //"trueNaN"

減號(hào),則將兩邊都進(jìn)行Number()處理

比較運(yùn)算:==, >, <, >=, >=, != 遵循規(guī)則(摘自高程3):

1.null和undefined是相等的

2.要比較相等之前,不能將null和undfined轉(zhuǎn)換成其他任何值

3.如有一個(gè)操作數(shù)為NaN,相等操作符返回fasle,不相等操作符返回true, NaN不等于NaN

4.兩個(gè)對(duì)象之間的比較,兩者指向同一個(gè)對(duì)象(地址相同),相等操作符返回true,否則返回false

值得注意的是:對(duì)象間的>=與==(!=)比較方式是不同的,前者是toString()返回值的比較,后者是引用地址的比較

當(dāng)都是兩邊都是字符串時(shí),按字符編碼大小進(jìn)行比較

當(dāng)一方操作數(shù)為boolean,string,object,轉(zhuǎn)成number類型的數(shù)值再進(jìn)行比較;

console.log("NaN" == NaN);     //false
console.log(undefined == null);  //true
console.log({} >= {1:2});     //true
console.log({1:2} != {});     //true
console.log({} == {1:2});     //false
console.log([1] == [1]);      //false
console.log(null == 0);      //false

相關(guān)文章

  • 純前端導(dǎo)出txt文本文件具體流程

    純前端導(dǎo)出txt文本文件具體流程

    TXT作為純文本格式,只支持無格式的文本內(nèi)容,不包括任何樣式信息,下面這篇文章主要給大家介紹了關(guān)于純前端導(dǎo)出txt文本文件的相關(guān)資料,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下
    2024-08-08
  • JavaScript與C# Windows應(yīng)用程序交互方法

    JavaScript與C# Windows應(yīng)用程序交互方法

    JavaScript與C# Windows應(yīng)用程序交互方法...
    2007-06-06
  • 深入探討javascript函數(shù)式編程

    深入探討javascript函數(shù)式編程

    在函數(shù)式編程中,函數(shù)被看做是“一等公民”。JavaScript可以通過巧妙地函數(shù)組合來構(gòu)建抽象,通過內(nèi)嵌函數(shù)的方式,在軟件開發(fā)的過程中,我們可以把更多的精力放在“函數(shù)要做什么”上,而不用太關(guān)心“函數(shù)如何做”的問題。
    2015-10-10
  • JavaScript forEach中return失效問題解決方案

    JavaScript forEach中return失效問題解決方案

    這篇文章主要介紹了JavaScript forEach中return失效問題解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • HTML Table 空白單元格補(bǔ)全的簡(jiǎn)單實(shí)現(xiàn)

    HTML Table 空白單元格補(bǔ)全的簡(jiǎn)單實(shí)現(xiàn)

    下面小編就為大家?guī)硪黄狧TML Table 空白單元格補(bǔ)全的簡(jiǎn)單實(shí)現(xiàn)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-10-10
  • 在網(wǎng)頁中使用document.write時(shí)遭遇的奇怪問題

    在網(wǎng)頁中使用document.write時(shí)遭遇的奇怪問題

    很多時(shí)候我們都會(huì)在網(wǎng)頁上的JavaScript中使用document.write來寫入一些東西,有的時(shí)候可能因?yàn)槲覀儫o法改變某一部分HTML而不得不使用這樣的辦法,也有的時(shí)候是因?yàn)樵谶M(jìn)行跨應(yīng)用的腳本調(diào)用。
    2010-08-08
  • js+html制作簡(jiǎn)單驗(yàn)證碼

    js+html制作簡(jiǎn)單驗(yàn)證碼

    這篇文章主要為大家詳細(xì)介紹了js結(jié)合html制作簡(jiǎn)單驗(yàn)證碼的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • js文本框輸入內(nèi)容智能提示效果

    js文本框輸入內(nèi)容智能提示效果

    這篇文章主要介紹了js文本框輸入內(nèi)容智能提示效果,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下
    2015-12-12
  • JavaScript網(wǎng)絡(luò)請(qǐng)求工具庫axios使用實(shí)例探索

    JavaScript網(wǎng)絡(luò)請(qǐng)求工具庫axios使用實(shí)例探索

    這篇文章主要為大家介紹了JavaScript網(wǎng)絡(luò)請(qǐng)求工具庫axios使用實(shí)例探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • 微信小程序開發(fā)中Promise的使用(aysnc,await)及場(chǎng)景分析

    微信小程序開發(fā)中Promise的使用(aysnc,await)及場(chǎng)景分析

    在微信小程序開發(fā)中,錯(cuò)誤使用Promise可能導(dǎo)致無法正確獲取數(shù)據(jù),本文分析了一個(gè)常見錯(cuò)誤場(chǎng)景,即在異步函數(shù)中未使用await或.then()處理Promise,導(dǎo)致無法獲取異步操作的返回結(jié)果,文章提供了使用await和鏈?zhǔn)秸{(diào)用.then()的解決方法,幫助開發(fā)者避免類似錯(cuò)誤,確保數(shù)據(jù)正確返回
    2024-10-10

最新評(píng)論