面试预演-新东方

  1. 数据类型详解
    基本数据类型的值本身无法改变,对数据的操作都是返回了一个新的。
    Boolean:表示一个逻辑实体(true/false)
    Null:只有一个值null
    数据类型 “symbol” 是一种原始数据类型,该类型的性质在于这个类型的值可以用来创建匿名的对象属性。
    在 JavaScript 运行时环境中,一个符号类型值可以通过调用函数 Symbol() 创建,这个函数动态地生成了一个匿名,唯一的值。
    Symbol类型唯一合理的用法是用变量存储 symbol的值,然后使用存储的值创建对象属性。以下示例使用”var”创建一个变量来保存 symbol。
    不可枚举,不会出现在for in循环中
    因为是匿名的,也不会出现在 Object.getOwnPropertyNames()的返回数组里
    这个属性可以通过创建时的原始 symbol 值访问到,或者通过遍历 “Object.getOwnPropertySymbols()” 返回的数组。
    内置函数 “Symbol()” 是一个不完整的类,当作为函数调用时会返回一个 symbol 值,试图通过语法 “new Symbol()” 作为构造函数调用时会抛出一个错误。
    1
    2
    var  myPrivateMethod  = Symbol();
    this[myPrivateMethod] = function() {...};

Object:
ECMAScript定义的对象中有两种属性:数据属性和访问器属性。
数据属性的特性:
configurable(false:属性不能被删除,并且 除了 [[Value]] 和 [[Writable]] 以外的特性都不能被改变),默认值:true
enumerable(false:不可枚举),默认值:true
writable(false:[[Value]]不能被改变),默认值:true
访问器属性的特性:
configurable(false:属性不能被删除,并且不能被转变成一个数据属性),默认值:true
get(函数对象或者 undefined),默认:undefined
set(函数对象或者 undefined),默认:undefined
JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式

  1. 继承和闭包
    闭包的例子:柯里化函数
    可以使用闭包来模拟私有方法
  2. html文档加载顺序

    1
    2
    加载 html 文档,从上向下解析,<head> 中的 link 是并行加载的,加载完成后开始 <body> 中的渲染,避免闪屏情况的出现,<script> 同步进行加载和解析,出现阻塞加载的情况。
    浏览器加载 一个 html 页面,并行进行解析(生成 DOM 树)和渲染。
  3. href与src的区别
    1.src 是指向物件的来源地址,是引入。在 img、script、iframe 等元素上使用。
    2.href 是超文本引用,指向需要连结的地方,是与该页面有关联的,是引用。在 link和a 等元素上使用。
    简而言之,src用于替换当前元素;href用于在当前文档和引用资源之间建立联系。

  4. http与https的区别
  5. lazyload的原理