前端路上不可怕,面试问题我帮你(周末福利)

1、 数组和对象有哪些原生方法,列举一下? 
Array.concat( ) 连接数组
Array.join( ) 将数组元素连接起来以构建一个字符串
Array.length 数组的大小
Array.pop( ) 删除并返回数组的最后一个元素
Array.push( ) 给数组添加元素
Array.reverse( ) 颠倒数组中元素的顺序
Array.shift( ) 将元素移出数组
Array.slice( ) 返回数组的一部分
Array.sort( ) 对数组元素进行排序
Array.splice( ) 插入、删除或替换数组的元素
Array.toLocaleString( ) 把数组转换成局部字符串
Array.toString( ) 将数组转换成一个字符串
Array.unshift( ) 在数组头部插入一个元素
Object.hasOwnProperty( ) 检查属性是否被继承
  96
Object.isPrototypeOf( ) 一个对象是否是另一个对象的原型
Object.propertyIsEnumerable( ) 是否可以通过 for/in 循环看到属性
Object.toLocaleString( ) 返回对象的本地字符串表示
Object.toString( ) 定义一个对象的字符串表示
Object.valueOf( ) 指定对象的原始值
2. javascript 对象的几种创建方式? 

  1. 工厂模式
  2. 构造函数模式
  3. 原型模式
  4. 混合构造函数和原型模式
  5. 动态原型模式
  6. 寄生构造函数模式
  7. 稳妥构造函数模式

3.关于 javascript 中 apply()和 和 call() 方法的区别? 
相同点:两个方法产生的作用是完全一样的
不同点:方法传递的参数不同
Object.call(this,obj1,obj2,obj3)
Object.apply(this,arguments)
apply()接收两个参数,一个是函数运行的作用域(this),另一个是参数数组。
call()方法第一个参数与 apply()方法相同,但传递给函数的参数必须列举出
来。

4.说说你对 this 的理解? 
在 JavaScript 中,this 通常指向的是我们正在执行的函数本身,或者是,指向
该函数所属的对象。
全局的 this → 指向的是 Window
函数中的 this → 指向的是函数所在的对象
对象中的 this → 指向其本身

5. js 延迟加载的方式有哪些 
defer 和 async、动态创建 DOM 方式(用得最多)、按需异步载入 js

6.jquery.extend  与 jquery.fn.extend 的区别? 
jquery.extend 用来扩展 jQuery 对象本身;jquery.fn.extend 用来扩展 jQuery
实例

7.jQuery 和 Zepto 的区别?各自的使用场景? 
jQuery主要用于pc端,当然有对应的jQuerymobile用于移动端,zepto比jQuery
更加小巧,主要用于移动端

8.常使用的库有哪些?常用的前端开发工具?开发过什么应用或组件? 
使用率较高的框架有 jQuery、AngularJs, ReactJs, YUI、Prototype、Dojo、Ext.js、Mootools 等。尤其是 jQuery,超过 91%。
轻量级框架有 Modernizr、underscore.js、backbone.js、Raphael.js 等。
(理解这些框架的功能、性能、设计原理)
前端开发工具:WebStorm, Hbuilder, Sublime Text 、Eclipse、Notepad、
Firebug、HttpWatch、Yslow。
开发过的插件:城市选择插件,汽车型号选择插件、幻灯片插件。弹出层。(写
过开源程序,加载器,js 引擎更好)(根据自己的了解的说出几点即可)

9.Label 的作用是什么?是怎么用的?
label 标签来定义表单控制间的关系,当用户选择该标签时,浏览器会自动将焦点转到
和标签相关的表单控件上。
<label for="Name">Number:</label>
<input type=“text“name="Name" id="Name"/>
<label>Date:<input type="text" name="B"/></label>

评论 ( 1 )
最新评论