国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

javascript由“5” >= "10"返回true引起的思考

nevermind / 1309人閱讀

摘要:眾所周知,是弱類型的語言。因此在一些不注意的地方容易犯錯誤。通過得到這兩個值,是字符串類型的數字,很顯然返回之前已經了。反思雖然寫的是弱類型的,但是在有明確類型的情況下,最好還是轉換成對應的類型進行比較。

眾所周知,js是弱類型的語言。因此在一些不注意的地方容易犯錯誤。在此記錄一下前幾天寫代碼的時候,判斷兩個值相比較的結果來進行下一步的操作。通過ajax得到這兩個值,是字符串類型的數字,很顯然返回之前已經toString()了。當時做比較的時候我也沒有多想,我以為這兩個值會自動轉換成number類型來比較,結果就悲劇了。
代碼如下

if(a>=b){
    ....
}
//實際執行結果是

if("5">="10"){
    ....
}
//結果值是 true

發現這個bug后,我馬上更新了代碼進行了to number操作,其實也很簡單,對于明確的由number to string的值,只要進行 a = a*1;這樣的操作就可以了。

疑問來了

雖然bug很快就被解決了,但是我卻陷入了思考,為什么"5">"10"呢?

開始實驗、猜測

我又測試了"5">"6","5">"11"等等,然后發現了規律,這兩個值比較是依賴于字符串的第一個值的大小。
接下來我又驗證了英文字母、漢字之間的相互比較,很快就有了猜測方向,很可能是根據ASCII值來進行比較的。然后就下班溜了。。。

證實

今天查了一下資料,講的很清楚小議js下字符串比較大小

一句話概括就是按照字典序進行對比。

反思

雖然寫的是弱類型的js,但是在有明確類型的情況下,最好還是轉換成對應的類型進行比較。

早點上TypeScript的車吧

誰有TypeScript + React 相關資料麻煩分享一下,謝謝啦

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/105398.html

相關文章

  • 解析ES6變量賦值和基本數據類型

      let和const  let和const兩者并不存在變量提升  這里要說明的是變量一定要在聲明后使用,否則報錯。  vara=[];   for(vari=0;i<10;i++){   a[i]=function(){   console.log(i);   };   }   a[6]();//10  變量i是var聲明的,我們要知道這里在全局范圍內都有效。我們要知道在每一次循環中,新的...

    3403771864 評論0 收藏0
  • Django中celery使用項目實例

      小編寫這篇文章的主要目的,主要是給大家去進行講解Django項目實例情況,包括celery的一些具體使用情況介紹,學習這些的話,對我們的工作和生活幫助還是很大的,但是怎么樣才能夠更快的進行上手呢?下面就一個具體實例給大家進行解答。  1、django應用Celery  django框架請求/響應的過程是同步的,框架本身無法實現異步響應。  但是我們在項目過程中會經常會遇到一些耗時的任務,比如:...

    89542767 評論0 收藏0
  • 匯總有關JS對象創建與繼承

      之前也有和大家講過有關JS的對象創建和對象繼承,本篇文章主要為大家做個匯總和梳理。  JS中其實就是原型鏈繼承和構造函數繼承的毛病,還有就是工廠、構造、原型設計模式與JS繼承。 JS高級程序設計4:class繼承的重點,不只是簡簡單單的語法而已。  對象創建  不難發現,每一篇都離不開工廠、構造、原型這3種設計模式中的至少其一!  那JS為什么非要用到這種3種設計模式了呢??  我們先從對...

    3403771864 評論0 收藏0
  • JavaScript進階之函數和對象知識點詳解

      在過往學習的JavaScript都是在基礎,現在為大家介紹更為深入的JavaScript知識。  JavaScript函數  JavaScript函數和Java函數是有一部分相似的,所以學習起來也會相對簡單  基本構造  1.直接構造  //function代表函數標志,name為函數名稱,參數可有可無   functionname(參數){   //...   return;   }  2....

    3403771864 評論0 收藏0

發表評論

0條評論

nevermind

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<