前端闲谈

        看完某网的前端面试后总结,总的来说知识体系还是对我有帮助的,下面列出常见一些问题并解决

  Es6

问:ES6 模块化如何使用,开发环境如何打包?

答:import 导入 ,export 导出 ,开发环境可用webpack ,rollup.js 模块打包工具

问: Es6的常用功能

答:let/const    多行字符串/模板变量    解构赋值  块级作用域  函数默认参数    箭头函数 (this)Promise: new Promise 实例,而且要return, new Promise 时要传入函数,函数有resolve reject 两个参数, 成功时执行 resolve() 失败时执行reject(), then 监听结果

    原型

问:原型的实际应用

答:jQuery的原型应用


$.fn 存放原型方法,可扩展

问:原型如何体现它的扩展性

答:$.fn.getNode = function() {......}4

  异步

问: 什么是单线程,和异步有什么关系

答: 单线程 - 只有一个线程,只能做一件事

        单线程原因 : 避免 DOM 渲染的冲突 (即两段js不能同时执行)

        单线程的解决方案: 异步

问: 什么是 event-loop

答: 事件轮询,JS实现异步的具体解决方案:

        同步代码,直接执行

        异步函数先放在 异步队列 中

        待同步函数执行完毕,轮询执行 异步队列 的函数

问:如何只用jQuery解决异步

答:jQuery 的 Deferred

问:Promise 的基本使用和原理

答:常用语法及Promise.race()和Promise.all()的使用

问:async ,await的使用

答: 同步promise使用,可用try catch 捕获异常

    vdom

问:vdom是什么?为何会存在vdom?

答:1  virtual dom , 虚拟 DOM

        用 JS 模拟 DOM 结构

      2  DOM 变化的对比,放在 JS 层来做(图灵完备语言)

        提高重绘性能

问:vdom的使用

答:snabbdom 库 (vdom 的实现)

      核心API:h函数  patch函数

问:diff算法

答: 知道什么是 diff 算法,是 linux的基础命令

        vdom 中应用 diff算法是为了找出需要更新的节点

        实现,patch(container,vnode) 和 patch(vnode, newVnode)

        核心逻辑,createElement 和updateChildren

vdom 找出本次 DOM 必须更新的节点来更新,其他的不更新

这个“找出”的过程,就需要 diff 算法

    React组件化

问:说一下对组件化的理解

答: 组件的封装:封装视图、数据、变化逻辑

        组件的复用:props 传递、复用

问:jsx的本质

答:JSX 其实是语法糖,开发环境会将 JSX 编译成 JS 代码, JSX 的写法大大降低了学习成本和编码工作量, 同时,JSX 也会增加 debug 成本  (React.createElement )

      JSX 是独立的标准,可被其他项目使用

问:jsx和vdom的关系

答: 为何需要 vdom : JSX 需要渲染成 html,还有 rerender

        React.createElement 和 h ,都生成 vnode

        何时 patch: React.render(…) 和 setState   

        自定义组件的解析:初始化实例,然后执行 render

问:setState 的过程

答: 每个组件实例,都有 renderComponent 方法 (继承Component), 执行 renderComponent  会重新执行实例的 render, render 函数返回 newVnode ,然后拿到 preVnode, 执行 patch(preVnode, newVnode)

setState 是异步的

问:React vs vue

答:本质区别: vue - 本质是 MVVM 框架,由 MVC 发展而来,

                  React - 本质是前端组件化框架,由后端组件化发展而来

      模板区别: vue - 使用模板(最初由 angular 提出)

                        React - 使用 JSX

        组件化的区别: React 本身就是组件化,没有组件化就不是 React, vue 也支持组件化,不过是在 MVVM 上的扩展

        共同点:都支持组件化,都支持组件化

----国内使用,首推 vue 。文档更易读、易学、社区够大,如果团队水平较高,推荐使用 React 。组件化和 JSX

 

    hybrid

问:hybrid 是什么,为何会用 hybrid

答: hybrid 即“混合”,即前端和客户端的混合开发

        hybrid 存在的核心意义在于快速迭代,无需审核

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,390评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,821评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,632评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,170评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,033评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,098评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,511评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,204评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,479评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,572评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,341评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,893评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,171评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,486评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,676评论 2 335

推荐阅读更多精彩内容

  • 前端发展与现状 大家都知道前端是由HTML、CSS、Js组成的,一开始这样写出来的页面,不能局部加载,复用性比较差...
    littleSong阅读 362评论 0 0
  • 1.Typescript中的&理解 参数中的 & 表示props对象同时拥有了TagManagementState...
    Lethe35阅读 7,591评论 0 1
  • 有人说,旅行最重要的并不是目的地,而是一起结伴同行的人。人生也不过如此。 在合适的时间,遇上合适的人一起同行,是幸...
    Belinda_6ac2阅读 278评论 1 0
  • 偶尔惦念,梦见不该梦见的人。印象深刻的关于他的几场梦总时不时的浮在回忆里,深刻的像是现实。 第一次是分手后的第二个...
    Rachelee阅读 175评论 0 0
  • 红玫瑰 一直一直,想要有自己的私房钱,确不敢说,今年,突然,大张旗鼓的对老大说,我...
    周方云53阅读 504评论 2 3