javascript基本数据类型(面试必背)

基本数据类型

[String字符串、Number数值、Boolean布尔值、Null空值、Undefined未定义]
Number数值:
● Number.MAX_VALUE表示获取数字的表示的最大值,超过就会输出无穷大。
● Infinity表示无穷大。
● NaN是一个特殊的数字,表示Not A Number。(使用isNaN()方法检查一个值是否为NaN)
● 使用JS进行浮点运算,会出现一个不精确的结果。原因为十进制转二进制出现余数

引用类型

[Object对象、Array数组类型、Function函数类型]

[区别]基本数据类型和对象

基本数据类型是直接在栈里面存储,值为相互独立,互不影响。
对象是保存在堆内存中,每创建一个新的对象,就会开辟一个新的空间。对象的变量是保存的对象的内存地址,如果两个对象的保存的同一个地址,当一个发生改变,另外一个同样会发生改变。

检测当前变量的数据类型的方法typeof

(typeof 需判断的内容,输出类型)
console.log(typeof a); //‘undefined’
console.log(typeof(true)); //‘boolean’
console.log(typeof ‘123’); //‘string’
console.log(typeof 123); //‘number’
console.log(typeof NaN); //‘number’
console.log(typeof null); //‘object’
使用instanceof 判断一个变量是array还是object
console.log(obj instanceof Array); //输出结果false
console.log(obj instanceof Object); //输出结果true

强制转换数据类型

转String:

● 方法一:toString()方法(b=a.toString();//有返回值,需要另外的变量存储)ps:只有String有toString()方法
● 方法二:String()函数(b=String(a);//有返回值,需要另外的变量存储),相当于调用了toString()方法,但对null和undefined不会调用,而是直接转换为"null"和"undefined"
● 方法三(简便):运用算数运算符c=c+“”;通过加空的字符串,隐式转换由浏览器决定转换为String
● null和undefined这两个值没有toString()方法;

转Number:

● 数字字符串,直接转换为数字(String)
● 非数字字符串,转换为NaN(String)
● 空串或空格字符串,转换为0(String)
● true转为1,flase转为0(Boolean)
● null转为0(Null)
● undefind转为NaN(undefind)
● parseInt()函数将String转为Number(会自动只取有效的整数内容/同时可以用于对数值取整)
● parseFloat()函数将String转为Number(会自动只取整数+小数的内容)
● 运用算数运算符c=c-0|c=c1|c=c/1;通过-/运算可以直接隐式转换由浏览器决定转换为Number
● (简便)运用算数运算符c=+c可以直接转换为Number

转Boolean:

● 数值转:0和NaN为false,其余都为true
● 字符串转:空串为false,其余都为true
● null转:false
● undefined转:false
● 对象转:true
● (简便)对一个值进行两次取反!!a可以直接转换为Boolean

转进制:

● 转16:以0x开头(a=0x10,输出16)
● 转8:以0开头(a=070,输出56)(ps:”070”这种0开头的字符串有些浏览器会当成8进制输出成:56,有些浏览器会当成10进制输出成:070//解决方法:parseInt(a,10);10表示指定转换为10进制)
● 转2:以0b开头(ps:不是所有的浏览器都支持)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zmsup

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值