JavaScript基本数据类型与引用数据类型

一、数据类型

基本数据类型:String、Number、Boolean、undefined、null、Symbol(ES6)

引用数据类型:Object、Array、Function、Date

基本数据类型存储在栈中,栈用于存储基本数据类型和执行代码

引用数据类型存储在堆中

速度
空间小,稳定大,动态、无限
存储顺序

无 按引用直接获取

二、undefined与null

undefined是一个变量最原始的状态值,非人为操作

null是人为地置空

undefined == null

判断是否为null:if(i === null)

三、typeof

typeof是一个运算符

        console.log(typeof undefined); //undefined
        console.log(typeof null);           //object
        console.log(typeof {a:"sd"});    //object
        console.log(typeof 123);         //number
        console.log(typeof "123");      //string
        console.log(typeof true);        //boolean
        console.log(typeof [1,2,3]);    //object
        function fn(){}
        console.log(typeof fn);          //function

四、其他数据类型转换为Boolean值

truefalse
undefined--undefined
null--null
Number其它+0、-0、NaN
Stringlength>0length=0
Object所有--

四、其它数据类型转换为Number

(1)使用Number函数

字符串:含有非数字为NaN,纯数字返回数字,"" 与 " "为0

布尔值:true 1,false 0

数组:[]为0,其余NaN

对象:NaN

null:0

undefined:NaN

判断变量a是否是NaN,isNaN(a);

        console.log(Number("123"));                //123
        console.log(Number(""));                      //0
        console.log(Number(" "));                     //0
        console.log(Number("a123"));            //NaN
        console.log(Number("123a123"));    //NaN
        console.log(Number(true));        //1
        console.log(Number(false));        //0
        console.log(Number({a:"1"}));    //NaN
        console.log(Number({a:true}));    //NaN
        console.log(Number({a:false}));    //NaN
        console.log(Number([1,2,3]));    //NaN
        console.log(Number([]));        //0
        function fn(){};                //
        console.log(Number(fn));        //NaN
        console.log(Number(null));        //0
        console.log(Number(undefined));    //NaN

(2)字符串转Number,parseInt与parseFloat

非数字后面的会被舍弃

第一个字符是非数字为NaN

五、其它数据类型转换为String类型

调用内置函数的toString方法

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值