JS 面试题集合(二)

一、延迟加载 JS 有哪些方式

延迟加载 : async、defer
例如:
defer : 等html全部解析完成,才会执行js代码,顺次执行js 脚本
async: asyc 是和 html 解析同步的 (一起的),不是顺次执行 js 脚本 (谁先加载完谁先执行)

二、JS 数据类型有哪些

基本类型: String、Number、Boolean、Undefined、Null、Symbol、BigInt
引用类型:Object
NaN 是一个数值类型,但是不是一个具体的数字

alert(true + 1);   // 2
alert("name" + true); // nametrue    字符串和其他类型 相加,变成连接的形式
alert(undefined + 1); // NaN
alert(typeof null);   // Object

alert(typeof(NaN));  // Number
alert(typeof(undefined));  //  undefined
alert(typeof(null));   // Object

三、Null 和 Undefined 的区别

1、作者在设计 JS 的都是先设计的 Null (为什么设计了Null:最初设计 JS 的时候借鉴了 java语言)
2、Null 会被隐式转换成 0,很不容易发现错误
3、先有null 后有 undefined,出来undefined 是为了填补之前的坑
具体区别:JavaScript 的最初版本是这样区分的,:Null 是一个表示“无”的对象(空对象指针),转换为数值时为 0;undefined 是一个表示“无”的原始值,转换为数值时为NaN

四、== 和=== 有什么不同

== : 比较的是值
string == number || boolean || number …都会隐式转换
通过 valueOf 转换 (valueOf ()) 方法通常会 JavaScript 在后台自动显示,并不显示的出现在代码中。
===: 除了比较值,还比较类型

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值