2021最新Web前端经典面试试题及答案-史上最全前端面试题(含答案)

1、JavaScript数组的常用方法有哪些?

答:push、pop、shift、unshift、join、sort、concat、reverse、splice、slice、indexOf等

详细资料:

JavaScript数组的常用方法总结:遍历,复制,反转,排序,添加,删除(前端常见面试题必考必问_勤动手多动脑少说多做-CSDN博客_js数组倒序输出1. Array.push()向数组的末尾添加一个或多个元素,并返回新的数组长度。原数组改变。一个:var fruits = ["Banana", "Orange", "Apple", "Mango"];var x=fruits.push("Kiwi");console.log(fruits)//(5) ["Banana", "Orange", "Apple", "Mango", "Kiwi"] console.log(x)//5 x是 新的数组长度多个:var fruits = 2021最新Web前端经典面试试题及答案-史上最全前端面试题(含答案)https://blog.csdn.net/qq_22182989/article/details/120995392

2、 js中null和undefined区别?


1. 相同点
  if 判断语句中,两者都会被转换为false

2. 不同点
Number转换的值不同,Number(null)输出为0, Number(undefined)输出为NaN

null表示一个值被定义了,但是这个值是空值
作为函数的参数,表示函数的参数不是对象

作为对象原型链的终点 (Object.getPrototypeOf(Object.prototype))

定义一个值为null是合理的,但定义为undefined不合理(var name = null)      
undefined表示缺少值,即此处应该有值,但是还没有定义
变量被声明了还没有赋值,就为undefined

调用函数时应该提供的参数还没有提供,该参数就等于undefined

对象没有赋值的属性,该属性的值就等于undefined

函数没有返回值,默认返回undefined


描述new操作符具体干了什么?


题目解析

先看代码

var Func=function(){
};
var func=new Func ();
new共经过了4几个阶段

1、创建一个空对象

varobj=new Object();
2、设置原型链

obj.__proto__= Func.prototype;
3、让Func中的this指向obj,并执行Func的函数体。

var result =Func.call(obj);
4、判断Func的返回值类型:

如果是值类型,返回obj。如果是引用类型,就返回这个引用类型的对象。

if (typeof(result) == "object"){
  func=result;
}
else{
    func=obj;;
}


js中apply和call的作用和区别是什么?


1、call,apply都属于Function.prototype的一个方法,它是JavaScript引擎内在实现的,因为属于Function.prototype,所以每个Function对象实例(就是每个方法)都有call,apply属性。既然作为方法的属性,那它们的使用就当然是针对方法的了,这两个方法是容易混淆的,因为它们的作用一样,只是使用方式不同。

2、语法:foo.call(this, arg1,arg2,arg3) == foo.apply(this, arguments) == this.foo(arg1, arg2, arg3);

3、相同点:两个方法产生的作用是完全一样的。

4、不同点:方法传递的参数不同。



列举js中的性能优化的方案


包括:
页面级优化和代码级优化。然后细分
页面级优化:比如:
1.减少 HTTP请求数
2.将外部脚本置底(将脚本内容在页面信息内容加载后再加载)
3.异步执行 inline脚本(其实原理和上面是一样,保证脚本在页面内容后面加载。)
4. Lazy Load Javascript(只有在需要加载的时候加载,在一般情况下并不加载信息内容。)
5. 将 CSS放在 HEAD中
6. 异步请求 Callback(就是将一些行为样式提取出来,慢慢的加载信息的内容)
7. 减少不必要的 HTTP跳转
8. 避免重复的资源请求

代码级优化:比如:

js写法
CSS选择符
HTML
Image压缩
参考:

前端性能优化方案都有哪些? - coober - 博客园前端是庞大的,包括 HTML、 CSS、 Javascript、Image 、Flash等等各种各样的资源。前端优化是复杂的,针对方方面面的资源都有不同的方式。那么,前端优化的目的是什么 ? 1. 从2021最新Web前端经典面试试题及答案-史上最全前端面试题(含答案)https://www.cnblogs.com/coober/p/8078847.html

5.cookies、sessionStorage和localStorage解释及区别


参考:

cookie、sessionStorage和localStorage的区别_浮生离梦的博客-CSDN博客一、 概念的理解webstorage本地存储1)webstorage是本地存储,存储在客户端,包括localStorage和sessionStorage2)localStorage生命周期是永久,这意味着除非用户显示在浏览器提供的UI上清除localStorage信息,否则这些信息将永远存在。存放数据大小为一般为5MB,而且它仅在客户端(即浏览器)中保存,不参与和服务器的通信3)ses...2021最新Web前端经典面试试题及答案-史上最全前端面试题(含答案)https://blog.csdn.net/weixin_42614080/article/details/90706499/

7.js延迟加载的方式有哪些?


一般有以下几种方式:

defer 属性
async 属性
动态创建DOM方式
使用jQuery的getScript方法
使用setTimeout延迟方法
让JS最后加载
参考:

上一篇:2022.01-1-03 深度学习入门-基于python的理论与实现


下一篇:xhEditor 图片粘贴上传,实现图文粘贴,图片自动上传