javascript的隱式轉換的簡單介紹

本文目錄一覽:

javascript 隱式轉換問題 “true” == true

== 判斷規則:

如果兩個值類型相同,進行 === 比較。

如果兩個值類型不同,他們可能相等。根據下面規則進行類型轉換再比較:

如果一個是null、一個是undefined,那麼[相等]。

如果一個是字元串,一個是數值,把字元串轉換成數值再進行比較。

如果任一值是 true,把它轉換成 1 再比較;如果任一值是 false,把它轉換成 0 再比較。

果一個是對象,另一個是數值或字元串,把對象轉換成基礎類型的值再比較。對象轉換成基礎類型,利用它的toString或者valueOf方法。js核心

內置類,會嘗試valueOf先於toString;例外的是Date,Date利用的是toString轉換。非js核心的對象,令說(比較麻煩,我也

不大懂)

任何其他組合,都[不相等]。

特別需要注意的是true、false的轉換,例如:

alert(true == 1); //ture

alert(true == 2); //false, true會轉換成number,也就是1,當然 1 不等於 2

//可以使用 !! 來把一個數據類型轉換為boolean型

alert(true == !!2) //true,!2 === false !(!=2) = !false = true

另外在js中,如果把一個變數用在邏輯運算中,那麼變數在無初始值或者其值為 0、-0、null、」”、false、undefined 或者 NaN時,它的值為 false。否則,其值為 true。

Javascript的typeof返回哪些數據類型?

1)返回數據類型

undefined

string

boolean

number

symbol(ES6)

Object

Function

2)強制類型轉換

Number(參數) 把任何類型轉換成數值類型。

parseInt(參數1,參數2) 將字元串轉換成整數

parseFloat()將字元串轉換成浮點數字

string(參數):可以將任何類型轉換成字元串

Boolean() 可以將任何類型的值轉換成布爾值。

3)隱式類型轉換

1.四則運算

加法運算符+是雙目運算符,只要其中一個是String類型,表達式的值便是一個String。

對於其他的四則運算,只有其中一個是Number類型,表達式的值便是一個Number。

對於非法字元的情況通常會返回NaN:

『1』 * 『a』 // = NaN,這是因為parseInt(a)值為NaN,1 * NaN 還是 NaN

2.判斷語句

判斷語句中的判斷條件需要是Boolean類型,所以條件表達式會被隱式轉換為Boolean。 其轉換規則同Boolean的構造函數。如:

var obj = {};if(obj){

while(obj);}

3.Native代碼調用

JavaScript宿主環境都會提供大量的對象,它們往往不少通過JavaScript來實現的。 JavaScript給這些函數傳入的參數也會進行隱式轉換。如BOM提供的alert方法接受String類型的參數:

alert({a: 1}); // = [object Object]

js面試題,3種強制類型轉換和2種隱式類型轉換是什麼

三種強制類型轉換:String(),Boolean(),Number();

(還有兩個:parseInt和parseFloat 應該也算吧)

2種隱式類型:+和-

js數組怎麼隱式轉化成number

可以通過以下3種方法來將string值轉換成number:

1.調用Number()來對string進行值類型轉換。

2.parseInt()。

3.parseFloat()。

Number()

使用Number()函數來對string進行強制類型轉換是最直接的做法。不過,這種做法有一個局限性:如果字元串截去開頭和結尾的空白字元後,不是純數字字元串,那麼最終返回結果為NaN。

代碼如下:

var a = ” 42″;

var b = ” 42mm”;

var c = “0xff”;

var d = “42.34”;

console.log(Number(a));//42

console.log(Number(b));//NaN

console.log(Number(c));//255

console.log(Number(d));//42.34

parseInt()

原創文章,作者:CCDW,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/143256.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
CCDW的頭像CCDW
上一篇 2024-10-14 18:46
下一篇 2024-10-14 18:46

相關推薦

  • Python簡單數學計算

    本文將從多個方面介紹Python的簡單數學計算,包括基礎運算符、函數、庫以及實際應用場景。 一、基礎運算符 Python提供了基礎的算術運算符,包括加(+)、減(-)、乘(*)、除…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • Python海龜代碼簡單畫圖

    本文將介紹如何使用Python的海龜庫進行簡單畫圖,並提供相關示例代碼。 一、基礎用法 使用Python的海龜庫,我們可以控制一個小海龜在窗口中移動,並利用它的「畫筆」在窗口中繪製…

    編程 2025-04-29
  • Python櫻花樹代碼簡單

    本文將對Python櫻花樹代碼進行詳細的闡述和講解,幫助讀者更好地理解該代碼的實現方法。 一、簡介 櫻花樹是一種圖形效果,它的實現方法比較簡單。Python中可以通過turtle這…

    編程 2025-04-28
  • Python大神作品:讓編程變得更加簡單

    Python作為一種高級的解釋性編程語言,一直被廣泛地運用於各個領域,從Web開發、遊戲開發到人工智慧,Python都扮演著重要的角色。Python的代碼簡潔明了,易於閱讀和維護,…

    編程 2025-04-28
  • 用Python實現簡單爬蟲程序

    在當今時代,互聯網上的信息量是爆炸式增長的,其中很多信息可以被利用。對於數據分析、數據挖掘或者其他一些需要大量數據的任務,我們可以使用爬蟲技術從各個網站獲取需要的信息。而Pytho…

    編程 2025-04-28
  • 使用JavaScript日期函數掌握時間

    在本文中,我們將深入探討JavaScript日期函數,並且從多個視角介紹其應用方法和重要性。 一、日期的基本表示與獲取 在JavaScript中,使用Date對象來表示日期和時間,…

    編程 2025-04-28
  • JavaScript中使用new Date轉換為YYYYMMDD格式

    在JavaScript中,我們通常會使用Date對象來表示日期和時間。當我們需要在網站上顯示日期時,很多情況下需要將Date對象轉換成YYYYMMDD格式的字元串。下面我們來詳細了…

    編程 2025-04-27
  • 如何製作一個簡單的換裝遊戲

    本文將從以下幾個方面,為大家介紹如何製作一個簡單的換裝遊戲: 1. 遊戲需求和界面設計 2. 使用HTML、CSS和JavaScript開發遊戲 3. 實現遊戲的基本功能:拖拽交互…

    編程 2025-04-27
  • Guava Limiter——限流器的簡單易用

    本文將從多個維度對Guava Limiter進行詳細闡述,介紹其定義、使用方法、工作原理和案例應用等方面,並給出完整的代碼示例,希望能夠幫助讀者更好地了解和使用該庫。 一、定義 G…

    編程 2025-04-27

發表回復

登錄後才能評論