数据类型 与 类型转换
javascript语言的数据类型
- 数值(number):整数和小数(比如
1
和3.14
) - 字符串(string):文本(比如
Hello World
)。 - 布尔值(boolean):表示真伪的两个特殊值,即
true
(真)和false
(假) -
undefined
:表示“未定义”或不存在,即由于目前没有定义,所以此处暂时没有任何值 -
null
:表示空值,即此处的值为空。 - 对象(object):各种值组成的集合
- 狭义的对象(object)
- 数组(array)
- 函数(function)
typeof 运算符
javascript有三种方法,可以判断一个值到底是什么类型
-
typeof
运算符 -
instanceof
运算符 -
Object.rpototype.toString
方法
typeof 123 // number
typeof '123' // string
typeof false // boolean
typeof new Function() //function
typeof undefined // undefined
typeof null // object
typeof {} // object
typeof [] // object 数组在js内部本质上是一种特殊的对象
转换为字符串
//1 使用全局函数 String()
String(1)//'1'
String(null)//'null'
String(undefined)//'undefined'
String({})//"[object Object]"
String(true)//'true'
//2 用 + 号 与 ''拼接 可以达到相同的效果
// 当 + 号左右两端出现字符串时 会将另一端转换为字符串拼接
let s = 1 + '1' //11
转换为布尔值
- 使用全局函数Number()
- 两次取反!
什么是falsy值?
MDN:falsy是在 Boolean 上下文中认定可转换为false的值
//javascript 中的5个 falsy值
!!0 //false
!!NaN //false
!!'' //false
!!null//false
!!undefined//false
转换为数字
- Number('1')
- parseInt('1')
- parseFloat('1.23')
- '1' - 0
- '1' //取正
重点在parseInt上,关于parseInt的详细用法请参考阮一峰javascript
网友评论