JAVASCRIPT 轉換字串雜記

來源:互聯網
上載者:User

標籤:整數   font   bre   求職   不能   邏輯   nbsp   size   是什麼   

  Number()遇到null會轉換為0,遇到underfind會轉換為NaN。

  一般整數用parseInt()方法,遇到空會轉換成NaN。(注意差別)該方法可設定第二個參數 parseInt(“要轉換字串”,幾進位)。遇到小數點會停止解析,後面忽略。

  parseFloat()也是從第一個字元開始解析,直到末尾或者遇見一個無效的浮點數字字元(第二個小數點)為止。十六進位字串始終被解釋為0,只解析十進位,沒有第二個參數。

  toString()方法可以直接調用不需要輸入參數,在調用數值的toString()方法時,可以傳遞一個參數,輸出值的基數,二進位到十六進位都可以,預設情況下是十進位。

 

  --和++ 

  當操作符在被操作值之前,執行前置遞增和遞減操作時,變數的值都是在語句被求職以前改變的。

  後置遞增和遞減操作是是在你包含他們的語句被求值之後才執行的。  

 

  位操作符(這玩意有啥用?)、

  將字串變成32位二進位碼,從右向左方向,第三十二位表示為加號或減號。理論上無符號就是正整數,切無符號第32位可以表示數字而非符號,理論上數值更大。

  求負數的絕對值的二進位碼,求二進位反碼,得到的二進位反碼加一。

  NaN和Infinity都會被當成0來處理。

  按位非(NOT)~表示。操作本質是操作輸的負值減一。

  按位與(AND)&表示。只有在兩個對位元值都是1 時才會返回1,任何一個是0結果都是0。

  按位或(OR)|表示。對位元值有一個是1就會返回1。

  按位異或(XOR)^表示。對位元值只有一個是1時才會返回1.

  左移 <<表示。原數值的的右側多出五個空位。

  有符號右移>>表示(保留加號或減號標記,從第31位開始),原數值的左側多出五個空位。

  無符號右移>>>表示。對於整數來說 無符號和有符號一樣,但是對於負數來說情況不同。首先無符號右移是以0來填充空位。而不像有符號右移那樣以符號來填充。其次無符號右移操作會把負數的二進位碼當成正數的二進位碼。而且由於負數以其絕對值的二進位補碼形式表示,因此就會導致無符號右移後的結果非常大。

  邏輯非(!)邏輯非操作符首先會講他的運算元轉換為一個布爾值,然後對其求反。

  邏輯與(&&)屬於短路操作,即第一個運算元能決定結果,那麼就不會再對第二個運算元求值。如果第一個運算元是false則無論第二個運算元是什麼值,結果都不在可能是true了。  

  邏輯或(||)屬於短路操作符,第一個操作的求值結果為true,就不會對第二個運算元求值了。(可以避免變數賦值null或者underfind)

  乘性操作符

  乘法,沒啥好說的。

  除法,零被零除結果是NaN。只要是和Infinity(無論正負)有關的,結果都是Infinity正負看操作符。

  求模(就是取餘數)%:

  • 如果被除數是無窮大值而除數是有限大的數值,則結果都是NaN
  • 如果被除數是有限大的數值而除數是零,則結果是NaN
  • 如果是Infinity被Infinity除則結果是NaN
  • 如果被除數是有限大的數值而除數是無窮大的數值,則結果是被除數    

(神馬?忘記了被除數和除數的關係了?)看這裡:

首先你要搞清楚,“除”和“除以”的概念。比如:十四除以二,列出的式子是“14÷2”;而十四除二,列出的式子是”2÷14“,”除“和”除以“的概念是不同的。
所以前面的數(14)就是被後面的數(2)除,叫作”被除數“。(列出式子就是”14÷2“)。 ”被除數“就是被”除數“除。

14÷2,讀作:”14被2除“或”14除以2“。
在此之前,我完全想不到加減乘除這麼多道道。(想象一個表情)

 

  加性操作符,可以使用括弧告訴解析器先計算其結果。十分好用。特別是三個字串相加的時候可以先把兩個都是數位字串相加,有限運算。

  所有的運算,在碰到運算元是字串、布爾值、null或者undefined都會在後台調用Number()函數。更多體現在“ ” null值為空白的時候(0)。

  關係操作符,在比較字串時,實際比較的是兩個字串中對應位置的每個字元的字元編碼值。  -----大寫字母的字元編碼全部小於小寫字母的字元編碼。 因此,要按字母排序比較必須要把同時轉換大小寫。 當一個字串內是數字時,與另一個數字比較會,會將字串轉換成數值,然後再比較大小。

  var result = “23” <“3”//true 因為“2”的編碼是50,而“3”的編碼是51.

 

  相等和不相等:null和undefined是相等的。null和undefined不能轉為成其他值。如果一個是NaN則相等為false,如果兩個都是NaN相等還是flase。一個是對象會調用valueOf()方法。 null==0 //false

  if、do-while、while 、for、for-in、break:立即退出迴圈,continue:退出當前這次迴圈,繼續下一次迴圈直到結束、label可以再代碼中添加標籤,以便將來使用。

  類似於  label:for(){ break label;//返回到哪一個標籤}、with(expression){ statement},就是簡化多次編寫同一個對象的工作,不推薦使用,strict 模式下不允許使用。

  switch 比較好用。

 

JAVASCRIPT 轉換字串雜記

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.