摘要:
1. CommonJS 用于服务端模块化编程,比如nodejs就采用此规范; 一个文件就是一个模块,require方法用来加载模块,该方法读取一个文件并执行,最后返回文件内部的module.exports对象; require是默认读取.js文件的,所以require(模块名)可以不写后缀; 同步加 阅读全文
摘要:
一. jsonp实现原理是利用script标签可以获取不同源资源的特点,来达到跨域访问某个资源的目的。具体行为如下: 二. jq中的ajax请求数据格式为jsonp时,会发生以下操作:先构造一个script标签,然后注册一个onload的回调,最后将构造好的script标签insert进去;inse 阅读全文
摘要:
一. 字符串的扩展 二. 数值的扩展 三. 数组的扩展 四. 函数的扩展 箭头函数使用注意: (1)函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象。 (2)不可以当作构造函数,也就是说,不可以使用new命令,否则会抛出一个错误。 (3)不可以使用arguments对象,该对象在 阅读全文
摘要:
在说promise之前有一些背景了解一下 Promise done用于捕获任何时候可能出现的错误,并全局抛出;finally用于不管Promise对象状态如何,都会执行的操作,接受一个普通的回调函数作为参数(必执行); 阅读全文
摘要:
一. Set 类似数组,成员值唯一,var s = new Set() s加入值用add,加入时不会发生类型转换(判断两值是否相等用的 ,但Set会认为NaN等于自己) Set.prototype.constructor Set , Set.prototype.size返回Set实例的成员总数 de 阅读全文
摘要:
1.Generator函数其实是一个封装了多个内部状态的状态机,执行它会返回一个遍历器对象,然后可以依次遍历Generator中的每一个状态,也就是分段执行,yield是暂停执行的标记,next恢复执行。 2.yield: - 一个函数里面,return只能执行一遍,yield可以执行多次; - G 阅读全文
摘要:
1.任何数据结构只要部署了Iterator接口(本质是一个指针对象),也就是部署了Symbol.iterator属性,便可以完成遍历操作;数组原生就具备Iterator接口,就可以用for...of遍历。由于Iterator只是把接口规格加到数据结构之上,所以,遍历器与它所遍历的那个数据结构,实际上 阅读全文
摘要:
1、一切引用类型都是对象,对象是属性的集合;typeof null 'object'(例外); 2、对象都是通过函数创建来的,比如var obj = new Object();typeof Object 'function'; 3、函数有隐藏属性prototype,对象有隐藏属性__proto__; 阅读全文
摘要:
一、熟悉几个名词: 1、执行环境(execution context),也叫执行上下文,每个函数都会有自己的执行环境;当浏览器首次加载脚本时,他将默认进入全局执行环境;如果接下来要调用一个内部函数,则创建一个新的执行环境,并将新建的执行环境压入执行环境栈(execution context stac 阅读全文
摘要:
方法1:使用className属性; 方法2:使用classList API; 注意:这种方法每次只能传一个类名且不能级联操作,而jquery下面的类似操作是可以操作多个类名的。 所以扩展一下: 阅读全文