JS学习笔记

JS学习笔记

1、语言基础

1、JS数据类型

简单数据类型:Number、String、Booloean、Null、Undefined、Symbol(es6)
复杂数据类型:Object

1、typeof操作符
可以区分对象和函数,typeof null =“Object” null被认为是空对象

2、undefined
定义未赋值报undefined
使用未定义直接报错,但typeof未定义也是undefined
因此尽量在定义的时候赋值,以此来明确typeof 出来是undefined就是未定义
undefined本身是假值false,可以直接if调用

3、null
对象空指针,尽量在对象初始化的时候赋于null
null也是一个假值,可以用if调用

4、boolean
if等流控制语句会自动执行其他类型到布尔类型的转换
转为boolean后为假值:空字符串、0、NaN、null、undefined

5、number
表示整数和浮点数,浮点数的精确度最高可达17位小数
可以使用科学记数法2e7表示2*10^7
超过范围的就会用±Infinity,出现该值,则不能进一步计算,若要检测数值范围可用isFinite()函数
若判断是否为数值,推荐使用isNaN() 这是因为NaN==NaN是false
数值转换:Number(null)=0;Number(undefined)=NaN;Number(“”)=0;
字符串转数字:parseInt(字符串,进制),解析到第一个有效整数结束为止,比如1.2会被解析为1
parseFloat解析到第一个有效浮点数结束为止,但只能解析十进制,不能区别进制,0开头的则始终返回0

6、string
toString(),null和undefined不行。toString唯一接受的参数就是在数值调用时可以传入进制
String(),对于null和undefined就是转化成“null”和“undefined”

7、Symbol
symbol类型的存在是为了标记一个唯一存在且不变的变量,为了防止对象发生属性冲突。
symbol不能与new关键字一起作为构造函数使用。只能在外面套一层Object()定义。

8、原始值与引用值的区别
原始值是存储在栈上的数据,原始值时直接存储在变量访问的位置。
引用值是存储在堆上的对象,引用值是一个指向该对象被存储在存储器中位置的值
对象是一个属性的集合,它本身的属性也可以是对象或者原始值。
除了null和undefined类型,其他原始值都有他对应的对象包装物,如boolean的包装物就是new Boolean()
举例说明区别:

const bool=new Boolean(false)
if(bool){
console.log("true");
}

此段代码最终的console结果为true,因为bool是一个对象,他是一个引用,如果单纯去判断一个对象,就是判断这个对象的引用是否存在,而不是它引用的值,如果改成if(bool.valueOf()),结果就无法输出这个true了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值