精选分类

文章列表

2k 2 分钟

# 模块化是什么 所谓模块化,就是指根据功能的不同进行划分,每个功能就是一个模块。最终,一个完整的产品是由各个模块组合而成的 独立性。可以针对一个模块单独进行设计、研发,相对工作量和难度变小。 复用性。一些通用模块(例如登录或注册)可以被重复使用,而不用每次重新开发。 解耦性。模块与模块之间,将相互影响降到最低,使得更换、升级或添加某个模块,不影响其他模块的工作。 灵活性。通过选择和组合不同的模块,可以快速构建一个新的产品。 # ES5...
2.9k 3 分钟

# 前言 此项目目的为了解决每次添加友链而频繁 deploy 博客的问题 idea 参考于 xaoxuu 使用此方式可能会导致一些问题,请谅解。 # 各部分介绍 项目地址 https://unpkg.com/ifriend/dist/index.js 为了方便的自动更新,因此选择了 unpkg,如果你觉得慢可以自行下载上传到 GitHub 并使用 jsd 连接。 Friend 容器 容器可以通过 js 添加到友链顶部,也可以直接在 markdown 里面写。如果写在 markdown 里那么是放在所有友链的最后边。关于具体容器名称是什么,可以通过创建对象时指定。 Friend...
3.8k 3 分钟

# 类是什么 虽然 ES6 提供了 class 关键字用于创建对象,但其终究只是语法糖,底层并未实现。 // ES6 创建类class Hero { constructor() { this.name = "张无忌"; this.sayMe = function () { console.log("this is 张无忌"); }; }}# 类的声明 类的声明方式 class name [extends]{ // class...
3.1k 3 分钟

# Symbol ES6 新增的一种原始类型,用于唯一的不可修改的,并且也可以用来用作 Object 的 key 值。 let symbol = Symbol();console.log(typeof symbol); // symbollet symbol2 = Symbol("xxx");console.log(typeof symbol2); // symbollet symbol3 = Symbol(666);console.log(typeof symbol3); // symbol该类型的值不可枚举。 # Symbol 的方法 for(key) 从...
1.5k 1 分钟

# 语法结构 异步函数声明式 async function name([param]){} 异步函数表达式 let name = async function([param]){}用法示例: async function myAsync() { return "hello world";}let promise = myAsync();promise.then((value) => { console.log(value); //...
1.9k 2 分钟

# 创建 Promise 对象 // 初始化状态let promise = new Promise(function (resolve, reject) { /** * resolve - 是一个函数,将 Promise 对象的状态改为成功 * rejecte - 是一个函数,将 Promise 对象的状态改为失败 */ setTimeout(() => { resolve("测试成功了!"); }, 200);});//then 将 promise...
907 1 分钟

# 对象的属性 ES6 中允许直接将变量和函数作为对象的属性和方法。 let name = "张无忌";function sayMe() { console.log("this is 张无忌");}var obj = { // ES6 运行变量名直接作为对象的属性和方法 name, sayMe,};console.log(obj.name);// 张无忌# Object 的方法 is() 对同值相等算法的具体实现 console.log(Object.is(+0, -0)); //...
987 1 分钟

# 函数参数的默认值 function fn(arg = 0) { console.log(arg);}fn(); // 0fn(100); // 100# 与解构赋值配合使用 function fn([a, b = 0]) { console.log(a + b);}fn([1]); // 1# 函数参数的作用域 let v = 100;function fn(arg = v) { let v = 1000; console.log(arg);}fn(); // 100 # rest...
2.7k 2 分钟

# 扩展运算符 原地展开一个数组 // 定义一个数组var arr = [1, 2, 3, 4];// 直接打印数组内每个元素console.log(...arr); // 1 2 3 4 函数调用时,逐个传入 // 定义一个数组var arr = [1, 2, 3, 4];// 函数内取每个参数function fn(a, b) { console.log(a + b);}fn(...arr); // 结果 3 实际传入的为数组第一个和第二个 复制数组 深复制:复制数组中的元素内容(数据) 浅复制:复制数组的内存地址 ES6...
2.8k 3 分钟

# Set 集合 set 集合是键唯一的集合。 let set = new Set([1, 2, 3, 4, 5, 2]);console.log(set); // Set { 1, 2, 3, 4, 5 } NaN 、 undefined 等值允许存储在 set 集合中。 其在 set 集合中是相等的。 let set = new Set([NaN, NaN, undefined, undefined, null, null]);console.log(set); // Set { 1 NaN, undefined, null...