JavaScript 数据类型
5 种不同的数据类型:
- string
- number
- boolean
- object
- function
3 种对象类型:
- Object
- Date
- Array
2 个不包含任何值的数据类型:
- null
- undefined
typeof 操作符查看 JavaScript 变量的数据类型。
typeof "John" // 返回 string
typeof 3.14 // 返回 number
typeof NaN // 返回 number
typeof false // 返回 boolean
typeof [1,2,3,4] // 返回 object
typeof {name:'John', age:34} // 返回 object
typeof new Date() // 返回 object
typeof function () {} // 返回 function
typeof myCar // 返回 undefined (如果 myCar 没有声明)
typeof null // 返回 object
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] }
JavaScript 类型转换
1.数字——>字符串
1.1.全局方法 String()
String(x) // 将变量 x 转换为字符串并返回
String(123) // 将数字 123 转换为字符串并返回
String(100 + 23) // 将数字表达式转换为字符串并返回
1.2.Number 方法 toString()
x.toString()
(123).toString()
(100 + 23).toString()
1.3.其他不常用方法参考http://www.runoob.com/js/js-type-conversion.html
2.布尔值——>字符串
2.1.全局方法 String()
2.2.Boolean 方法 toString()
3.日期——>字符串
3.1.Date() 返回字符串
Date() // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)
3.2.全局方法 String()
String(new Date()) // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)
3.3.Date 方法 toString()
obj = new Date()
obj.toString() // 返回 Thu Jul 17 2014 15:38:19 GMT+0200 (W. Europe Daylight Time)
3.4.其他不常用方法参考http://www.runoob.com/js/js-type-conversion.html
4.字符串——>数字
4.1.全局方法 Number()
Number("3.14") // 返回 3.14
Number(" ") // 返回 0
Number("") // 返回 0
Number("99 88") // 返回 NaN
4.2.一元运算符 +
var y = "5"; // y 是一个字符串
var x = + y; // x 是一个数字
var y = "John"; // y 是一个字符串
var x = + y; // x 是一个数字 (NaN)
4.3.其他不常用方法参考http://www.runoob.com/js/js-type-conversion.html
5.布尔值——>数字
5.1.全局方法 Number()
Number(false) // 返回 0
Number(true) // 返回 1
6.日期——>数字
6.1.全局方法 Number()
d = new Date();
Number(d) // 返回 1404568027739
6.2.日期方法 getTime()
d = new Date();
d.getTime() // 返回 1404568027739
7.自动转换为字符串:输出一个对象或一个变量时 JavaScript 会自动调用变量的 toString() 方法.
document.getElementById("demo").innerHTML = myVar;
// if myVar = {name:"Fjohn"} // toString 转换为 "[object Object]"
// if myVar = [1,2,3,4] // toString 转换为 "1,2,3,4"
// if myVar = new Date() // toString 转换为 "Fri Jul 18 2014 09:08:55 GMT+0200"
// if myVar = 123 // toString 转换为 "123"
// if myVar = true // toString 转换为 "true"