JS 公司必考面试题

1.**面试题:nullundefined的区别? **


nullundefined都是原生JS中基础类型的数据,语法上都用于表示无效数据


null一般表示空值,更多的时候和对象的描述有关;转换成整数为0;null是语法中的一个关键词

undefined一般表示未定义/未声明值,通常一个声明了但是没有赋值的变量会自动赋值undefined,和基础类型的数据表示相关;转换成整数为NaNundefined不是语法中的关键词


项目中使用这两个数据时,如果我们希望一个变量中可能要存储对象,在存储对象之前可以赋值null;如果希望一个变量中可能存储基础数据,可以不赋值默认就是undefined


我们使用undefined时需要注意,这不是一个关键词,所以尽量不要使用undefined给变量直接赋值,很容易出现BUG,如果非要给一个变量显示赋值undefiend建议使用下面的语法:

let _username;    // 推荐,默认undefined
let _username = undefined; // 不推荐,存在BUG
let _username = void 0;    // 赋值一个表达式,表达式返回undefined

2.面试题:请描述下面的代码输出结果是什么? 考察parseInt

const result = parseInt('111', 2)
console.log("result:", result)

题目分析:

  • parseInt()函数:主要用于类型转换,将其他类型数据转换成整数
  • 最常见:将字符串的数值,转换成整数数值
  • 出现了第二个参数:2,将需要转换的数据当成指定的进制进行转换
parseInt("12") => 12
parseInt("200px") => 200
parseInt("$200.00") => NaN
parseInt("500X200") => 500

结论分析:

# 将'111'按照2进制的方式进行处理,转化得到10进制数据
const result = parseInt('111', 2) // 7
# 0 1 10 11 100 101 110 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

慕遥慕遥

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

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

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

打赏作者

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

抵扣说明:

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

余额充值