Git Product home page Git Product logo

interview's Introduction

interview's People

Contributors

deantg avatar

Watchers

 avatar

interview's Issues

module

  • CommonJS
  • ES6 Module
  • Asynchronous Module Definition(AMD)- RequireJS
  • Common Module Definition(CMD)- SeaJS
  • Universal Module Definition(UMD)

spa

组成
刷新方式
SEO 搜索引擎优化
页面切换
维护成本
单页面应用 (SPA)
一个主页面和页面组件
局部刷新
无法实现
速度快,用户体验良好
相对容易
多页面应用 (MPA)
多个完整的页面
整页刷新
容易实现
切换加载资源,速度慢,用户体验差
相对复杂
。用户体验好、快,内容的改变不需要重新加载整个页面,服务端压力小。
。SPA 应用不利于搜索引擎的抓取。
。首次渲染速度相对较慢 (第一次返回空的 html,需要再次请求首屏数据)白屏时间长.
1.3 解决方案
·静态页面预渲染(Static Site Generation)SSG,在构建时生成完整的 html 页面。(就是在打包的时候先将页面放到浏览器中运行一下,将HTML保存起来),仅适合静态页面网站。变化率不高的网站
。SSR + CSR 的方式,首屏采用服务端渲染的方式,后续交互采用客户端渲染方式。NuxtJs

new

new 一个对象发生了什么

(1)创建一个新的对象(创建一个新的对象)
(2)设置这个新对象的原型为构造函数的原型(设置对象的原型属性)
(3)执行构造函数,设置构造函数的 this 指向为新创建的对象,执行构造函数中定义的行为。(确定 this 指向)
(4)返回值处理
如果构造函数返回值是引用类型,则返回构造函数的返回值。构造函数返回了一个对象,在实例中只能访问返回的对象中的属性
如果构造函数的返回值是基本类型,则返回新创建的对象。尽管有返回值,但是相当于没有返回值进行处理。

scope chain

作用域最大的用处就是隔离变量

BFC

BFC: block formatting context(块级格式化上下文)

w3c中关于bfc的解释

1.在一个块级格式化上下文里,盒子从包含块的顶端开始垂直地一个接一个地排列,两个盒子之间的垂直的间隙是由他们的margin 值所决定的。两个相邻的块级盒子的垂直外边距会发生叠加。
2.在块级格式化上下文中,每一个盒子的左外边缘(margin-left)会触碰到容器的左边缘(border-left)(对于从右到左的格式来说,则触碰到右边缘),即使存在浮动也是如此,除非这个盒子创建一个新的块级格式化上下文。

阅读的两篇关于bfc解释的bolg1blog2

触发条件

MDN中关于bfc的触发条件

  • 根元素或其它包含它的元素
  • 浮动 (元素的 float 不为 none)
  • 绝对定位元素 (元素的 position 为 absolute 或 fixed)
  • 行内块 inline-blocks (元素的 display: inline-block)
  • 表格单元格 (元素的 display: table-cell,HTML表格单元格默认属性)
  • 表格标题 (元素的 display: table-caption, HTML表格标题默认属性)
  • overflow 的值不为 visible的元素
  • 弹性盒子 flex boxes (元素的 display: flex 或 inline-flex)

影响

  • 阻止外边距折叠
  • 可以包含浮动的元素(清浮动)
  • 可以阻止元素被浮动元素覆盖(用于布局)

key

就地更新策略,不移动节点

Box Model

盒子模型都是由四个部分组成:margin,border,padding,content
标准盒子模型width和height只包含content,
怪异盒子模型:width和height只包含border,padding,content

vue的理解

声明式框架与命令式框架

  • 命令式框架:jq。关注过程
  • 声明式框架:vue。关注结果

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.