javascript基礎知識(18) 類型轉換

來源:互聯網
上載者:User

標籤:關於   結果   mil   計數   查看   const   enc   color   top   

JavaScript 類型轉換

Number() 轉換為數字, String() 轉換為字串, Boolean() 轉化為布爾值。

JavaScript 資料類型

在 JavaScript 中有 5 種不同的資料類型:

  • string
  • number
  • boolean
  • object
  • function

3 種物件類型:

  • Object
  • Date
  • Array

2 個不包含任何值的資料類型:

  • null
  • undefined
typeof 操作符

你可以使用 typeof 操作符來查看 JavaScript 變數的資料類型。

typeof "John"                 // 返回 string typeof 3.14                   // 返回 numbertypeof NaN                    // 返回 numbertypeof false                  // 返回 booleantypeof [1,2,3,4]              // 返回 objecttypeof {name:‘John‘, age:34}  // 返回 objecttypeof new Date()             // 返回 objecttypeof function () {}         // 返回 functiontypeof myCar                  // 返回 undefined (如果 myCar 沒有聲明)typeof null                   // 返回 object

請注意:

  • NaN 的資料類型是 number
  • 數組(Array)的資料類型是 object
  • 日期(Date)的資料類型為 object
  • null 的資料類型是 object
  • 未定義變數的資料類型為 undefined

如果對象是 JavaScript Array 或 JavaScript Date ,我們就無法通過 typeof 來判斷他們的類型,因為都是 返回 Object。

constructor 屬性

constructor 屬性返回所有 JavaScript 變數的建構函式。

"John".constructor                 // 返回函數 String()  { [native code] }(3.14).constructor                 // 返回函數 Number()  { [native code] }false.constructor                  // 返回函數 Boolean() { [native code] }[1,2,3,4].constructor              // 返回函數 Array()   { [native code] }{name:‘John‘, age:34}.constructor  // 返回函數 Object()  { [native code] }new Date().constructor             // 返回函數 Date()    { [native code] }function () {}.constructor         // 返回函數 Function(){ [native code] }

你可以使用 constructor 屬性來查看對象是否為數組 (包含字串 "Array"):

function isArray(myArray) {    return myArray.constructor.toString().indexOf("Array") > -1;}

你可以使用 constructor 屬性來查看對象是否為日期 (包含字串 "Date"):

function isDate(myDate) {    return myDate.constructor.toString().indexOf("Date") > -1;}
JavaScript 類型轉換

JavaScript 變數可以轉換為新變數或其他資料類型:

  • 通過使用 JavaScript 函數
  • 通過 JavaScript 自身自動轉換
將數字轉換為字串

全域方法 String() 可以將數字轉換為字串。

該方法可用於任何類型的數字,字母,變數,運算式:

String(x)         // 將變數 x 轉換為字串並返回String(123)       // 將數字 123 轉換為字串並返回String(100 + 23)  // 將數字運算式轉換為字串並返回

Number 方法 toString() 也是有同樣的效果。

x.toString()(123).toString()(100 + 23).toString()

在 Number 中,你可以找到更多數字轉換為字串的方法:

方法 描述
toExponential() 把對象的值轉換為指數計數法。
toFixed() 把數字轉換為字串,結果的小數點後有指定位元的數字。
toPrecision() 把數字格式化為指定的長度。
將布爾值轉換為字串

全域方法 String() 可以將布爾值轉換為字串。

String(false)        // 返回 "false"String(true)         // 返回 "true"

Boolean 方法 toString() 也有相同的效果。

false.toString()     // 返回 "false"true.toString()      // 返回 "true"
將日期轉換為字串

Date() 返回字串。

Date()      // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)

全域方法 String() 可以將日期對象轉換為字串。

String(new Date())      // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)

Date 方法 toString() 也有相同的效果。

obj = new Date()obj.toString()   // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)

在 Date 方法 中,你可以查看更多關於日期轉換為字串的函數:

 

方法 描述
getDate() 從 Date 對象返回一個月中的某一天 (1 ~ 31)。
getDay() 從 Date 對象返回一周中的某一天 (0 ~ 6)。
getFullYear() 從 Date 對象以四位元字返回年份。
getHours() 返回 Date 對象的小時 (0 ~ 23)。
getMilliseconds() 返回 Date 對象的毫秒(0 ~ 999)。
getMinutes() 返回 Date 對象的分鐘 (0 ~ 59)。
getMonth() 從 Date 對象返回月份 (0 ~ 11)。
getSeconds() 返回 Date 對象的秒數 (0 ~ 59)。
getTime() 返回 1970 年 1 月 1 日至今的毫秒數。

javascript基礎知識(18) 類型轉換

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.