成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

javaScript學(xué)習(xí)之隱式轉(zhuǎn)換

peixn / 1623人閱讀

摘要:搬家篇三開(kāi)胃菜因?yàn)榇笥诘扔诘谋容^,不是相等的比較,所以值得注意的操作符一元操作符通過(guò)進(jìn)行轉(zhuǎn)換其中包括號(hào)運(yùn)算符,號(hào)運(yùn)算符,都是經(jīng)轉(zhuǎn)換邏輯運(yùn)算符等價(jià)于將操作數(shù)進(jìn)行布爾值類型轉(zhuǎn)換位操作當(dāng)一邊操作數(shù)為時(shí),可等價(jià)于操作數(shù)為由以下變化可以證得加號(hào)運(yùn)算

搬家篇三
開(kāi)胃菜
[] == ![]                  //true  ==> "" == false
123 ^ []                   //123   ==> 123 ^ 0
~{}                        //-1    ==> ~0
{} >= {1,2}                //true  ==>因?yàn)榇笥诘扔诘谋容^,不是相等的比較,所以[object Object] >=[object Object]
[null] == ""               //true  ==> [""] == ""
值得注意的操作符:

一元操作符:通過(guò)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

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/97931.html

相關(guān)文章

  • JavaScript學(xué)習(xí)之Object(下)this

    摘要:為什么用能夠動(dòng)態(tài)的取值,實(shí)現(xiàn)了隱式傳遞一個(gè)對(duì)象的引用上面的例子中想在中取的值用就能簡(jiǎn)單搞定一定程度上實(shí)現(xiàn)了動(dòng)態(tài)取值這個(gè)就是綁定了,這個(gè)就是上下文對(duì)象也就是調(diào)用棧是什么始終是一個(gè)對(duì)象,函數(shù)在被調(diào)用時(shí)發(fā)生綁定,具體綁定了什么看調(diào)用的位置,有一定 this 為什么用this this能夠動(dòng)態(tài)的取值,實(shí)現(xiàn)了隱式傳遞一個(gè)對(duì)象的引用 var obj = { ...

    liuyix 評(píng)論0 收藏0
  • javaScript學(xué)習(xí)之數(shù)值強(qiáng)轉(zhuǎn)換

    摘要:搬家篇二數(shù)據(jù)類型分為基本數(shù)據(jù)類型和引用數(shù)據(jù)類型基本數(shù)據(jù)引用數(shù)據(jù)當(dāng),小數(shù)點(diǎn)后大于等于位時(shí)會(huì)自動(dòng)轉(zhuǎn)換成科學(xué)計(jì)數(shù)法當(dāng),當(dāng)整數(shù)部分大于等于位時(shí)會(huì)自動(dòng)轉(zhuǎn)換成科學(xué)計(jì)數(shù)法。 搬家篇二 javascript數(shù)據(jù)類型分為基本數(shù)據(jù)類型和引用數(shù)據(jù)類型 基本數(shù)據(jù):Number, Boolean, Undefined, Null, String; 引用數(shù)據(jù):Object; 當(dāng)0.000...01,小數(shù)點(diǎn)后大于等...

    klivitamJ 評(píng)論0 收藏0
  • JavaScript機(jī)器學(xué)習(xí)之線性回歸

    摘要:不能用于機(jī)器學(xué)習(xí)太慢幻覺(jué)矩陣操作太難有函數(shù)庫(kù)啊,比如只能用于前端開(kāi)發(fā)開(kāi)發(fā)者笑了機(jī)器學(xué)習(xí)庫(kù)都是開(kāi)發(fā)者機(jī)器學(xué)習(xí)庫(kù)神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)自然語(yǔ)言處理卷積神經(jīng)網(wǎng)絡(luò)一系列庫(kù)神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)我們將使用來(lái)實(shí)現(xiàn)線性回歸,源代碼在倉(cāng)庫(kù)。 譯者按: AI時(shí)代,不會(huì)機(jī)器學(xué)習(xí)的JavaScript開(kāi)發(fā)者不是好的前端工程師。 原文: Machine Learning with JavaScript : Part 1 ...

    gitmilk 評(píng)論0 收藏0
  • JavaScript機(jī)器學(xué)習(xí)之KNN算法

    摘要:是的縮寫,它是一種監(jiān)督學(xué)習(xí)算法。每一個(gè)機(jī)器學(xué)習(xí)算法都需要數(shù)據(jù),這次我將使用數(shù)據(jù)集。其數(shù)據(jù)集包含了個(gè)樣本,都屬于鳶尾屬下的三個(gè)亞屬,分別是山鳶尾變色鳶尾和維吉尼亞鳶尾。四個(gè)特征被用作樣本的定量分析,它們分別是花萼和花瓣的長(zhǎng)度和寬度。 譯者按: 機(jī)器學(xué)習(xí)原來(lái)很簡(jiǎn)單啊,不妨動(dòng)手試試! 原文: Machine Learning with JavaScript : Part 2 譯者: Fund...

    enrecul101 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<