JavaScript数据类型

1、数据类型

  • 特点:
    • java、c、c#等,在声明变量时已经确定了数据类型
    • javasc没有确定数据类型,在执行过程中会确定
      • js为弱类型语言
  • Number
    • 八进制、十进制、十六进制在计算时最终被转换为十进制进行计算
    • NaN: not a number
      • NaN与任何值不相等,包括他本省
    • isNa: is not a number
  • String
    • \ 反斜杠,转义
      • \n \t等转义符
    • str.length 获取长度
    • 加号两个作用
      • 加法和拼接字符串:数字+字符串结果为字符串(数字转为字符串后拼接)
  • Boolean类型
    • 值为true或false,区分大小写
    • 计算机内存中1为true, 0为false
  • Undefind 和 Null
    • Undefind 一个没有赋值的变量
    • null 表示为空

2、复杂数据类型

  • object

3、获取变量的类型

  • typeof
    • 变量在内存中是已经确定好的,用typeof获取数据类型

4、数据类型转换

  1. 转换为字符串:
    • str.toString()
    • String(str)
      • null和undefind用String(str)转换为字符串,其它用str.toString()就可以
var a = null;
console.log(a.toString());//报错
console.log(String(a));//输出null
  1. 通过拼接来转为字符串:
    • 数字加空字符串
    • num +""
      - 特例:console.log(typeof num +'') 结果为boolean (运算顺序从左到右,需要加()提高优先级)
  2. 转为数值类型:
  • Number()
    - Number('123') ----->NaN
    - Number('123a') ---->NaN
    - Number(true) ------>1
  • parseInt() //parse 解析 int 整数
    - 遇到数字转换,遇到非数字返回
    - parseInt('123') --->123
    - parseInt(true) --->NaN
    - parseInt(’123aa‘)---->123
    - parseInt(’aa123‘)---->NaN
  • parseFloat()
  • 取正数或负数
var str='123'
console.log(+str)  ---->123
var str='123c'
console.log(+str)  ---->NaN
var str='123'
console.log(str - 0) ---->123
var str='123c'
console.log(str - 0)  ---->NaN
  1. 转为布尔类型:
    • Boolean()出现false的五种情况(其余均为true):null undefind 空字符串 0 NaN
posted @ 2019-10-17 00:10  侠客cp  阅读(145)  评论(0编辑  收藏  举报