web前端面试题及答案

语文资源 2019-3-24 588

  引导语:了解一些面试题及答案,可以帮助自己顺利通过面试哦。以下是小编为大家整理的web前端面试题及答案,供各位参考。

  1、怎样添加、移除、移动、复制、创建和查找节点?

  创建新节点:

  creatDocumentFragment(),创建一个DOM片段。

  creatElement(),创建一个具体的元素。

  creatTextNode(),创建一个文本节点。

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

  appendChild(),添加。

  removeChild(),移除。

  replaceChild(),替换。

  Before(),插入。

  查找:

  getElementsByTagName(),通过标签名称。

  getElementsByName(),通过元素的Name属性的值。

  getElementById(),通过元素id,唯一性。

  2、JS中什么是伪数组?如何将伪数组转化为标准数组?

  伪数组(类数组):无法直接调用数组方法或期望length属性有什么特殊的行为。但仍可以对真正数组遍历方法来遍历它们。典型的是函数的arguement参数,还有像调用getElementsByTagName()、document.childNodes()之类的,它们都返回NodeList对象,都属于伪数组。可以用Array.prototype.slice.call(fakeArray)将数组转化为真正的Array对象。

  3、JS中callee和caller的作用。

  caller是返回一个对函数的引用,该函数调用了当前函数;

  callee是返回正在被执行的函数,也就是所指定的function对象的正文。

  4、请说出三种减低页面加载时间的方法。

  1.压缩CSS、JS文件。

  2.合并JS、CSS文件,减少HTTP请求。

  3.外部JS、CSS文件放最底下。

  4.减少DOM的操作,尽可能用变量替代不必要的DOM操作。

  5、为什么用多个域名来存储网络资源会更有效?

  确保用户在不同地区用最快的速度打开网站,其中某个域名崩溃,用户也能通过其他域名访问网站。

  6、如何消除一个数组里面重复的元素?

  indexOf():返回某个指定的字符串值在字符串中首次出现的位置,对大小写敏感,若没有,则返回-1。

  7、写一个function,清除字符串前后的空格(兼容所有的浏览器)。

  8、统计字符串中字母个数或统计最多字母数。

  str.charAt(i):返回指定位置的字符,i在0~str.length之间,如果i不在0~str.length之间,该方法返回一个空字符串。

  9、截取字符串"abcdefg"中的"egf"。

  10、实现一个函数clone,可以对JS中的5种主要的数据类型(包括Number、String、Object、Array、Boolean)进行值复制。

  11、JS中如何检测一个变量是string类型?

  typeof(obj)=="string";

  obj.constructor==string;

  12、写出三个使用this的典型应用。

  事件:onclick this,发生事件的对象;

  构造函数:this,new出来的object;

  call/apply:改变this;

  13、网页中实现一个计算当年还剩多少时间的倒计时程序,要求网页上实时动态显示“xx年还剩xx天xx时xx分xx秒”。

不坑老师小灶资源(限时开启) ¥ 199