js基础篇:3、浅谈js的七种数据类型

js的数据类型

    js有七种数据类型,其中又可以划分为基本数据类型(Number、String、Null、Boolean、undefined、Symbol(ES6新增))和引用数据类型(Object)。

基本数据类型

  • Number
  • String
  • Null
  • Boolean
  • undefined
  • Symbol(ES6新增)

一、Number 数字

    Number类型里有整数和小数。

    其中NaN(Not a Number) 和 Infinity(无限大)属于Number型里的特殊值。

typeof(NaN)             //number
typeof(Infinity)        //number
NaN === NaN             //false
Infinity === Infinity   //true
isNaN(123)              //false 用于判断是不是非数字值

以上是NaN和Infinity的几种特殊情况。

二、String 字符串

    字符串最外层是单引号或者双引号,它们没任何区别。而且自身带有length属性,比如:

var str = '这是汉字长度' 
console.log(str.length)  //6

var str = 'hello'
console.log(str.length) //5
两种转换string类型的方法
  • String(X) (推荐使用这种)
String({a:1,b:2})      // [object object]
String([1,2,'a','b'])  // "1,2,a,b"
String(123)            // "123"
String(null)            // "null"
  • X.toString()
[1,2].toString()       // "1,2"
null.toString()        // 报错:Uncaught TypeError: Cannot read property 'toString' of null
undefined.toString()   // 报错:Uncaught TypeError: Cannot read property 'toString' of undefined
123.toString()         // 报错:Uncaught SyntaxError: Invalid or unexpected token

toString并不能转换nullundefined,并且,数字转换string时我们要先声明变量再转换

let num = 123
num.toString()    //"123"

toString还有个作用就是查看数字的进制结果

let num = 123
123.toString(2)         // "1111011"

显而易见,我们如果要转string类型还是用String()的办法好。

三、Null 空值

    一个空值变量,它可以为各种可能的类型。同时还可以给变量赋值来利用垃圾回收机制清除不需要的变量。

四、Boolean 布尔

    Boolean型只有两个值,那就是truefalse

五、undefined 未定义的

    undefined类型的值就只有undefined,当你声明了一个无初始化值的变量时,那它的值就是undefined。

var a
console.log(a)   //undefined

六、Symbol

    这是一个ES6才引进的数据类型,它是通过Symbol()函数产生的值,并且每个产生的值都是唯一的,这也说明它产生的任意两个值都不想等。

Symbol() === Symbol()   // false

可以利用这一特性给组件属性命名,而不再怕和别的组件重复了。

引用数据类型

  • Object 对象

对象可以通过执行new操作符后跟要创建的对象类型的名称来创建。

var obj = new Object()
var arr = new Array()

转载于:https://my.oschina.net/chendejie/blog/3077084

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值