Web前端之JS面试题及答案有哪些?
Web前端之JS面试题及答案有哪些?很多企业在招聘时都会考察求职者对JavaScript的掌握,其中数据类型是重点。JavaScript中有七种内置数据类型,包括基本类型和对象类型。在面试官提问时他们不会直接考察具体有哪些类型,而是迂回提问,重点考察你的综合理解。接下来就给大家分享JavaScript数据类型相关的面试题及答案。
1、说说你对JavaScript是弱类型语言的理解?
JavaScript是弱类型语言,而且JavaScript声明变量的时候并没有预先确定的类型,变量的类型就是其值的类型,也就是说变量当前的类型由其值所决定。夸张点说上一秒种的String,下一秒可能就是个Number类型,这个过程可能就进行了某些操作发生了强制类型转换。虽然弱类型的这种不需要预先确定类型的特性给我们带来了便利,同时也会给我们带来困扰。为了能充分利用该特性就必须掌握类型转换的原理。
2、JavaScript中强制类型转换是一个非常易出现bug的点,知道强制转换时候的规则吗?
ToPrimitive(转换为原始值)转成何种原始类型,取决于type,type参数可选,若指定,则按照指定类型转换,若不指定,默认根据实用情况分两种情况,Date为string,其余对象为number。
Number运算符转换规则:null转换为0,undefined转换为NaN,true转换为1,false转换为0,字符串转换时遵循数字常量规则,转换失败返回NaN。
String运算符转换规则:null转换为'null',undefined转换为undefined,true转换为'true',false转换为'false',数字转换遵循通用规则,极大极小的数字使用指数形式。
ToBoolean运算符转换规则:undefined、null、-0、0或+0、NaN、''(空字符串)转换结果为false,其他全部为true。
3、在什么情况下发生什么样的转换?
什么时候自动转换为string类型?1)在没有对象的前提下;2)当有对象且与对象+时候。
什么时候自动转换为Number类型?1)有加法运算符,但是无String类型的时候;2)除了加法运算符,其他运算符都会把运算自动转成数值。注意:null转为数值时为0,而undefined转为数值时为NaN。
什么时候进行布尔转换?1)布尔比较时;2)if(obj),while(obj)等判断时或者三元运算符只能够包含布尔值。
4、怎么判断一个值到底是数组类型还是对象?
1)通过typeof操作符来判断一个值属于哪种基本类型。
2)通过instanceof操作符也可以对对象类型进行判定,其原理就是测试构造函数的prototype是否出现在被检测对象的原型链上。
5、toString和String的区别是什么?
1)toString()可以将数据都转为字符串,但是null和undefined不可以转换。
2)toString()括号中可以写数字,代表进制,如二进制:.toString(2)。
3)String()可以将null和undefined转换为字符串,但是没法转进制字符串。
熟练掌握JavaScript,你就具备了学好Web前端的前提。如果你想了解更多的Web前端面试相关技能,可以进行系统的学习进阶,为自己创造职场高起点!
猜你喜欢LIKE
最新文章NEW
相关推荐HOT
更多>>热门推荐
如何在面试中得高分?一般要注意哪些方面
沸UI设计师如何应对面试?哪些细节不可忽略
热求职者如何应对面试?需要特别注意什么
热Java面试必问什么技术?如何搞定Spring框架
新求职过程中如何抓住机遇?要注意哪些要点
郑州Web前端培训之JavaScript面试题推荐
郑州云计算培训机构之常见面试题及答案
如何开始求职生涯?个人简历有哪几种类型
初入职场大学生如何应对?怎么规避职场风险
企业对Python人才的招聘需求有哪些?
职场新人如何找到适合自己性格的工作?
大学生如何尽快获得职位?需要注意哪几点
毕业生如何应对求职?推荐10条参考标准
常见UI设计面试题有哪些?郑州UI培训好不