欢迎光临散文网 会员登陆 & 注册

《WEB前端面试题个人合集》第1期:第一题到第十三题的个人解析【诗书画唱】

2021-06-01 23:52 作者:诗书画唱  | 我要投稿







前面我发布的2篇主要内容为面试题问答的专栏中也有部分是自己写的解析等等。还可以CTRL+F一些关键词,来查看第二十二题到第六十一题的解析等等,包括一些函数的使用,专有名称的含义,单词的读音,意思。一些补充,修正等内容我会写在专栏等的评论区


第一题的解析

第二题的解析

第三题的解析

第四题的解析

第六题的解析

第七题的解析

第九题的解析

第十题解析

第十一题解析

第十二题解析

第十三题解析

清辅音/p/的发音方法






 

OPTIONS:请求旨在发送一种“探测”请求以确定针对某个目标地址的请求必须具有怎样的约束(比如应该采用怎样的HTTP方法以及自定义的请求报头),然后根据其约束发送真正的请求。比如针对“跨域资源”的预检(Preflight)请求采用的HTTP方法就是OPTIONS。 




第一题的解析

es6模块化





let

 


parse

 

JSON.parse

 






const

 

async

 




await

 

filter

 

every

 

includes

 

可用字符串的includes方法时要留意的一点是include方法区分大小写。




在JavaScript中还有一种与includes方法用法完全相同的方法indexOf



find

 

手机和PC端(CTRL+滑动鼠标滚轮)都上看此图可放大图片后观看

reduce

 

trim

 

startsWith

endsWith

json

forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。

注意: forEach() 对于空数组是不会执行回调函数的。

some






第二题的解析

块级作用域

函数作用域:变量在定义的环境中以及嵌套的子函数中处处可见;
块级作用域:变量在离开定义的块级代码后立即被回收。


作用域


变量提升


第三题的解析

XMLHttpRequest = XML + Http + Request 。

XMLHttpRequest对象的本质是一个可以发送Http请求处理Http响应与服务器之间进行异步交换数据的对象其核心是Http。然后介绍了Http请求和响应包括的具体内容。Http请求包括:方法,URL,请求头,请求主体。Http响应包:状态码,响应头和响应主体。


xmlhttprequest的大小写


(获取http请求状态的status)200和(也是获取状态的readyState)4分别是请求成功和处理完毕

status

 

state

 

response

 

向ajax后台的程序发送xmlhttp请求的时候, 后台程序接到请求会进行处理,处理结束后,可以返回一串数据给前台,这个就是responseText.  



send

 

ready

 



第四题的解析

listener

 



click

 

event

 

第六题的解析


arguments

 

apply

 

bind

 

bind,call,apply的作用都是用来改变this指向的。

generator


 

ECMAScript 6 (简称 ES6 )。


yield

 




target

 

prototype

 



第七题的解析

splice


 




join

 




第九题的解析


 

  DOM,全称“DocumentObjectModel(文档对象模型)”,它是由W3C组织定义的一个标准。

 

  在前端开发时,我们往往需要在页面某个地方添加一个元素或者删除元素,这种添加元素、删除元素的操作就是通过DOM来实现的。

 

  说白了,DOM就是一个接口,我们可以通过DOM来操作页面中各种元素,例如添加元素、删除元素、替换元素等。这下大家就懂了吧。记住,DOM就是文档对象模型,文档对象模型就是DOM,很多人在学习DOM的时候看到“文档对象模型”还不知道是什么?


类数组对象,意思就是说:表面上看起来是数组,但内在却不是数组。在Javascript语言中,我们会碰到许多这样的类数组对象。其中最典型的便是function中的arguments。

function add(a, b) {

var args = arguments;

console.log(args); // => [3, 4]

console.log(Object.prototype.toString.call(args));

// => [object Arguments]

console.log(args.length); // => 2

console.log(args.slice);

// => undefined


return a + b;}

add(3, 4);

我们发现,当我们去打印arguments的类型时,浏览器输出了[object Arguments],并且在arguments对象中,slice方法都没有,这说明argument对象确实不是数组而是一个类数组对象为了享受数组的那些便捷方法,所以我们需要将类数组对象转换成真正的数组对象。

通常来说,只要[].slice.call就能转换了。

function toArray(arrayLike) {

return [].slice.call(arrayLike);

}


slice

 


第十题解析

bind


 

apply

 


第十一题解析

filter

 

item

 

Set

 

Array.from 方法可以将 Set 结构转为数组。


[... new Set(arr)]就是先用...操作符把new Set(arr)这个成员唯一,无序且不重复的Set集合的元素变成可变数量参数的多个的独立的对象后放在[ ]中,就变成了数组。

解构:拆分一个普通对象或者数组,将对象的属性或者数组元素赋值给指定的变量。


个人理解:...有拆分的作用,和拆分后对应的复制的解构不同。

不要理解成解构,理解成让被操作的内容变成可半数量参数就可以

rest理解为可变数量参数,组合


spread理解为扩展。

个人理解:解构是{}和[...]等中的一种语法,是语法糖。

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment




扩展运算符...

作用是把数组或类数组对象展开成一系列用逗号隔开的值(个人理解:把数值等等扩展成很多单独的对象)

rest参数...

作用与扩展运算符恰好相反,把逗号隔开的值序列组合一个数组

//主要用于不定参数,所以ES6开始可以不再使用arguments对象





indexOf




lastIndexOf





第十二题解析

inherit


 

第十三题解析

chrome

 

webkit

 

blink

 

google

 

trident

 




Safari

 

core

 

script

 

清辅音/p/的发音方法

gecko

 

Opera


 

software

 






《WEB前端面试题个人合集》第1期:第一题到第十三题的个人解析【诗书画唱】的评论 (共 条)

分享到微博请遵守国家法律