JavaScript 数据类型转换
-
JavaScript数据类型
在JavaScript中,有5种不同的数据类型可以包含值:- string
- number
- boolean
- object
- function
有3种类型的对象:- Object
- Date
- Array
2种不能包含值的数据类型:- null
- undefined
-
操作符的类型
您可以使用typeof运算符查找JavaScript变量的数据类型。语法:请注意:- NaN的数据类型是数字
- 数组的数据类型是object
- 日期的数据类型是object
- null的数据类型是object
- 未定义的变量的数据类型undefine *
- 尚未赋值的变量的数据类型也undefine *
您不能typeof用来确定JavaScript对象是否是数组(或日期)。
-
typeof的数据类型
typeof操作符不是一个变量。这是一个运算符。运算符(+ - * /)没有任何数据类型。但是,typeof运算符(包含操作数的类型)总是返回一个字符串。 -
-
-
constructor属性
JavaScript变量可以转换为新变量和另一种数据类型:- 通过使用JavaScript函数
- 由JavaScript本身自动完成
-
-
将布尔值转换为字符串
全局方法String()可以将布尔值转换为字符串。toString()也是如此。 -
-
将字符串转换为数字
全局方法Number()可以将字符串转换为数字。包含数字的字符串(如“3.14”)将转换为数字(如3.14)。空字符串转换为0。其他任何东西都转换为NaN(Not a Number)。在数字方法一章中,您将找到更多可用于将字符串转换为数字的方法 -
-
将布尔值转换为数字
全局方法Number()还可以将布尔值转换为数字。 -
将日期转换为数字
全局方法Number()可用于将日期转换为数字。日期方法getTime()也是如此。 -
-
自动字符串转换
当您尝试“输出”对象或变量时,JavaScript会自动调用变量的函数toString():数字和布尔值也被转换,但这不是很明显: -
一些令人迷糊的转换结果
原始值 转换为数字 转换为字符串 转换为布尔 false 0 "false" false true 1 "true" true 0 0 "0" false 1 1 "1" true "0" 0 "0" true "000" 0 "000" true "1" 1 "1" true NaN NaN "NaN" false Infinity Infinity "Infinity" true -Infinity -Infinity "-Infinity" true "" 0 "" false "20" 20 "20" true "twenty" NaN "twenty" true [ ] 0 "" true [20] 20 "20" true [10,20] NaN "10,20" true ["twenty"] NaN "twenty" true ["ten","twenty"] NaN "ten,twenty" true function(){} NaN "function(){}" true { } NaN "[object Object]" true null 0 "null" false undefined NaN "undefined" false