前端工程师面试遇到的面试题(一)

编程入门 行业动态 更新时间:2024-10-24 18:27:24

ES6中的三个面试题

1.对浏览器的内核了解?有哪些内核?

浏览器要渲染出网页给用户看,必须要加载在html编码和js脚本,渲染页面的UI和js执行引擎操作内存,就是浏览器的的重要组成程序:内核

根据不同的浏览器厂商,他们使用不同的内核,内核的程序是很难实现的,根据我的了解有一些内核的公司自己实现的有,有一些是借用的别人写的内核

比如以下公司就是自己写的内核

1、IE浏览器内核:Trident内核,也是俗称的IE内核

2、Chrome浏览器内核:统称为Chromium内核或Chrome内核,以前是Webkit内核,现在是Blink内核

3、Firefox浏览器内核:Gecko内核,俗称Firefox内核

4、Safari浏览器内核:Webkit内核

5、Opera浏览器内核:最初是自己的Presto内核,后来是Webkit,现在是Blink内核
  
除了以上的比较普遍使用的浏览器还有一些国内比较出名的浏览器,基本都是双核浏览器

比如:360浏览器,2345浏览器,夸克浏览器等等

1、360浏览器和2345浏览器的内核都是IE,chrome双核(就是 webkit 和 Trident 都有)

2、夸克浏览器的内核是Quarkium,是UC团队基于Chromeium定制的

2.ES5和ES6有什么区别或者看法?

ECMAScript5,即 ES5,是 ECMAScript 的第五次修订,于 2009 年完成标准化
ECMAScript6,即 ES6,是 ECMAScript 的第六次修订,于 2015 年完成,也称 ES2015
ES6 是继 ES5 之后的一次改进,相对于 ES5 更加简洁,提高了开发效率.

  • ES6中新增了let和const来表示变量和常量
  • 在ES5中使用的var来修饰变量,而var存在可以 先访问在声明 或者 声明相同的变量名的问题,这些问题虽然浏览器都能解决但是会带来一些隐患,但是在ES6中使用let来修饰就不会存在这些问题了
  • 箭头函数:函数名=(形参)=>{函数体},不需要使用function来修饰,更加方便快捷
  • 解构赋值是对赋值运算符的扩展。,是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。 在代码书写上简洁且易读,语义更加清晰明了;也方便了复杂对象中数据字段获取。数组中的值会自动被解析到对应接收该值的变量中,数组的解构赋值要一一对应如果有对应不上的就是 undefined.
  • ES6相对于ES5进行了一些代码优化
//合并数据
//ES5写法
const a = [1,2,3];
const b = [4,5,6];
const c = a.concat(b);  //[1,2,3,4,5,6]

//ES6写法 
const a = [1,2,3];
const b = [1,5,6];
const c = [...new Set([..a,..b])]; //[1,2,3,5,6]

//关于if中的判断条件
//ES5的写法
if(
    type == 1 ||
    type == 2 ||
    type == 3 ||
    type == 4 ||
)


//ES6的写法
const condition = [1,2,3,4];
if(condition.includes(type)){
    // ...
}

3.讲一讲ES6的版本怎么更新的(面试有但少)

ES6是在2015年6月发布的,以后的每年六月会进行更新版本

Stage 0 - Strawman(展示阶段)

Stage 1 - Proposal(征求意见阶段)

Stage 2 - Draft(草案阶段)

Stage 3 - Candidate(候选人阶段)

Stage 4 - Finished(定案阶段)

一个提案只要能进入 Stage 2,就差不多肯定会包括在以后的正式标准里面。

更多推荐

前端工程师面试遇到的面试题(一)

本文发布于:2023-06-14 09:46:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1462959.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:面试题   工程师

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!