JS开发面试中常见的测试题

作为一名web前端开发工程师,我们总免不了去找工作。既然要找工作那就不免会有面试,一般我们最头疼的莫过于技术面试了,前面的HTML和CSS可能对于我们来说是小kiss,因为那部分相对于JS开发而言比较简单,但是一遇到JS开发这部分我们就开始挠头了,今天华清远见JS开发频道就为你分享几道面试中常见的JS开发测试题,让你规避面试中的“风险”。

1、介绍js的基本数据类型

Undefined、Null、Boolean、Number、String

2、s有哪些内置对象?

数据封装类对象:Object、Array、Boolean、Number 和 String

其他对象:Function、Arguments、Math、Date、RegExp、Error

3.this对象的理解

this总是指向函数的直接调用者(而非间接调用者);

如果有new关键字,this指向new出来的那个对象;

在事件中,this指向触发这个事件的对象,特殊的是,IE中的attachEvent中的this总是指向全局对象Window;

4.eval是做什么的?

它的功能是把对应的字符串解析成JS代码并运行;

应该避免使用eval,不安全,非常耗性能(2次,一次解析成js语句,一次执行)。

由JSON字符串转换为JSON对象的时候可以用eval,var obj =eval(‘(‘+ str +’)’);

5.DOM怎样添加、移除、移动、复制、创建和查找节点

// 创建新节点

createDocumentFragment() //创建一个DOM片段

createElement() //创建一个具体的元素

createTextNode() //创建一个文本节点

// 添加、移除、替换、插入

appendChild()

removeChild()

replaceChild()

insertBefore() //在已有的子节点前插入一个新的子节点

// 查找

getElementsByTagName() //通过标签名称

getElementsByName() //通过元素的Name属性的值(IE容错能力较强,会得到一个数组,其中包括id等于name值的)

getElementById() //通过元素Id,唯一性

6.null和undefined的区别?

null是一个表示”无”的对象,转为数值时为0;undefined是一个表示”无”的原始值,转为数值时为NaN。

undefined:

(1)变量被声明了,但没有赋值时,就等于undefined。

(2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。

(3)对象没有赋值的属性,该属性的值为undefined。

(4)函数没有返回值时,默认返回undefined。

null:

(1) 作为函数的参数,表示该函数的参数不是对象。

(2) 作为对象原型链的终点。

7.new操作符具体干了什么呢?

(1)创建一个空对象,并且 this 变量引用该对象,同时还继承了该函数的原型。

(2)属性和方法被加入到 this 引用的对象中。

(3)新创建的对象由 this 所引用,并且最后隐式的返回 this 。

8.JSON 的了解?

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它是基于JavaScript的一个子集。数据格式简单, 易于读写, 占用带宽小。

格式:采用键值对,例如:{‘age’:’12’, ‘name’:’back’}

9.call() 和 apply() 的区别和作用?

apply()函数有两个参数:第一个参数是上下文,第二个参数是参数组成的数组。如果上下文是null,则使用全局对象代替。

如:function.apply(this,[1,2,3]);

call()的第一个参数是上下文,后续是实例传入的参数序列。

如:function.call(this,1,2,3);

10.如何获取UA?

function whatBrowser() {

document.Browser.Name.value=http://www.gunmi.cn/v/navigator.appName;

document.Browser.Version.value=http://www.gunmi.cn/v/navigator.appVersion;

document.Browser.Code.value=http://www.gunmi.cn/v/navigator.appCodeName;

document.Browser.Agent.value=http://www.gunmi.cn/v/navigator.userAgent;

}

今天的分享就到这里了,大家赶紧做一下上面的测试题,看看自己是否已经合格了。

【近期文章推荐】

1.2018高薪趋势的6大IT技术岗位,有你吗?

2.应届生一天收获4份offer,只因他做到了这4点

3.星创客金牌讲师录制STM32系列视频教程(免费领)

4.一周48家招聘单位要人 开发人员需求井喷

5.华为阿里工资高,看看人家的下班时间再抱怨

6.一位资深程序员大牛给予Java初学者的学习路线建议

7.华清远见荣获腾讯“回响中国”2017年度影响力教育品牌大奖

回复“0-71”任一数字,即可查看往期文章精选哦

长按二维码3秒

与10万程序高手做朋友

每天干货享不停

(记得识别二维码哟) 

 JS开发面试中常见的测试题

或微信搜索华清远见,即可关注我们

免费讲座 | 干货分享 | 程序员生活 | 就业招聘

高端IT就业培训专家

m.embedu.org