JavaScript
Lee木木
一只爱养猫的通信狗
展开
-
ES6 JavaScript 高阶对象、高阶类 详解
ES6 JavaScript 高阶对象、高阶类 详解前言1、高阶对象实现1.1 普通的继承1.2 匿名类1.3 匿名继承1.4 用箭头函数改进匿名继承1.5 继续演进上述例子2、继承方法2.1 通过类来继承2.1 通过函数来继承3、通过函数给类添加方法的实例3.1 通过函数增加属性方法3.2 通过类增加属性方法4、多函数增加属性方法5、父子属性优先级前言JS 是基于对象的,类 和 对象 都是 对象模版混合 Mixin,指的是将一个对象的全部或者部分拷贝到另一个对象上去,其实就是属性可以将多个类或对原创 2020-08-06 15:45:24 · 445 阅读 · 0 评论 -
ES6 JavaScript 异常 详解
ES6 JavaScript 异常 详解1、抛出异常2、捕获异常1、抛出异常JS 的异常语法和 JAVA 相同,使用 throw 关键字抛出使用 throw 关键字可以抛出任意对象的异常// throw new Error('New Error');// throw new ReferenceError('Ref Error');// throw 1;// throw 'Not OK';throw () => {};2、捕获异常try...catch 语句捕获异常try.原创 2020-07-26 14:14:19 · 1003 阅读 · 0 评论 -
ES6 JavaScript 函数详解
ES6 JavaScript 函数详解1、函数概念1.1 函数语法1.1.1 示例1.2 函数表达式1.2.1 匿名函数1.2.2 有名字的函数表达式-11.2.3 有名字的函数表达式-21.2.4 有名字的函数表达式-3(递归函数)1.3 函数/匿名函数/函数表达式的差异1.4 高阶函数1.4.1 示例-计数器 counter1.4.2 示例-计数器 counter(生成器版)2、函数参数2.1 普通参数2.2 可变参数(rest parameters 剩余参数)2.3 arguments 对象2.4 参原创 2020-07-26 13:56:54 · 1872 阅读 · 1 评论 -
ES6 JavaScript 箭头函数(扩展)
ES6 JavaScript 箭头函数(扩展)1、箭头函数的不同形式2、说明1、箭头函数的不同形式const map = function (arr, fn) { let newarr = [] for (let i in arr) { newarr[i] = fn(arr[i]) } return newarr}console.log("=".repeat(25))console.log(10, map([1, 2, 3, 4, 5], (x)原创 2020-07-24 16:06:39 · 165 阅读 · 0 评论 -
ES6 JavaScript 自定义MAP 函数
1、要求自定义 MAP 函数,要求:map ([array], func) ==> [new array]返回一个新的改变过的数组2、自定义函数1const map = function (arr, fn) { let newarr = [] for (let i=0; i<arr.length; i++) { newarr[i] = fn(arr[i]) } return newarr}console.log(map([1, 2原创 2020-07-24 10:18:17 · 330 阅读 · 0 评论 -
ES6 JavaScript Symbols 类型
1、Symbols 介绍ES6 提供 Symbols 类型,内建原生类型Symbols l类型的值是通过Symbol构造函数创建的Symbols 是不可改变且唯一的像字符串一样,Symbols 也可以被用做对象属性的键2、示例2.1 Symbol 值唯一let sym1 = Symbol();let sym2 = Symbol('key');let sym3 = Symbol('key');console.log(sym1, sym2, sym3)console.log(sym2原创 2020-07-22 19:37:28 · 161 阅读 · 0 评论 -
ES6 JavaScript 条件循环等控制语句
ES6 JavaScript 控制语句1、if 条件分支语句1.1 语法1.2 示例2、switch...case 分支语句2.1 语法2.2 示例3、for 循环语句3.1 语法3.2 示例4、while 循环4.1 语法4.2 示例5、do...while 循环5.1 语法5.2 示例6、for...in 循环6.1 语法6.2 数组 --- 示例6.3 C风格 --- 示例6.3 对象 --- 示例7、for...of 循环7.1 语法7.2 示例8、break/continue 说明9、for 迭代原创 2020-07-22 18:50:40 · 621 阅读 · 0 评论 -
ES6 JavaScript 数组 和类型判断
if (true) { var a = 100 // 函数作用域可以约束 var 定义的变量 let b = 200 // 块 “{}”作用域 c = 300 // 隐性,全局作用域}console.log(a, c)// 向内穿透// for (;;); 死循环// when (1);/*var biggestNum = Number.MAX_VALUEconsole.log(biggestNum)console.log(0b00111111)c原创 2020-07-20 17:26:38 · 764 阅读 · 0 评论 -
ES6 JavaScript 数字类型、算术运算符、三元运算符和位运算 详解
ES6 JavaScript 数字类型 详解1、数字常量 Number Constant Properties2、数字类型表示方法3、数字方法 number method4、Math 方法 Math Method4.1 扩展5、算术运算符 Arithmetic operator6、位运算 Bit Operations7、三元运算符 Ternary operator1、数字常量 Number Constant Properties// Number Constant Propertiesvar bigg原创 2020-07-20 17:17:51 · 913 阅读 · 0 评论 -
ES6 JavaScript 字符串详解
JavaScript字符串说明1、说明2、示例1、说明/*1、将一个值用单引号('')或者双引号("")引用起来就是字符串2、ES6提供了反引号(``)定义一个字符串,可以支持多行,还支持插值和插值运算*/2、示例let a = 'abc';let b = "123";let c = `${a+b}`;let d = `First LineSecond LineThird Line`;let name = 'Tom', age = 19console.log(1, a,原创 2020-07-16 11:34:20 · 288 阅读 · 0 评论 -
JavaScript 数据类型及object类型介绍
1、数据类型2、示例ES 是动态语言,弱类型语言。虽然事先声明了变量,但是变量可以重新赋值任何类型。/*说明:1、遇到字符串,加号就是拼接字符串,所有非字符串隐式转换为字符串2、如果没有字符串,加号把其它所有类型都当数字处理,非数字类型隐式转换为数字3、undefined 特殊,因为它都没有定义值,所以转换数字失败得到一个特殊值 NaN4、如果运算符是逻辑运算符,短路符,返回的就是短路时的类型,没有隐式转换5、除非你十分明确,否则不要依赖隐式转换。写代码的时候,往往为了程序的健壮,请显原创 2020-07-15 12:23:51 · 862 阅读 · 0 评论 -
JavaScript 生成器表达式
Python 生成器表达式1、生成器表达式示例2、输出结果3、解释说明1、生成器表达式示例function* inc(){ let i = 0; let j = 7; while(true) { yield i++; if(!j--) return 100; }}let gen = inc()for (let i=0; i<10; i++) console.log(gen.next());2、输出结果 (下午1原创 2020-07-15 13:41:38 · 1036 阅读 · 0 评论 -
JS 的 Promise详解
JS 的 Promise详解function runAsync() { return new Promise (function(resolve, reject){ setTimeout(function(){ console.log('Do Sth...'); resolve('OK...') // reject('NOT OK...'); }, 3000); });}runAs原创 2020-06-08 11:16:45 · 5056 阅读 · 0 评论 -
JS 常量 和 变量 详解
JS 常量 和 变量 详解1、常量和变量的标识符2、变量声明3、例子3.1 简单声明3.2 声明变量说明3.3 变量的作用域3.3.1 函数作用域中的变量3.3.2 函数中变量的作用域1、常量和变量的标识符标识符 必须是 字母 、 下划线 、 美元符号 $ 和 数字 ,但必须是 字母 、 下划线 、 美元符号 $ 开头,依然是不能以 数字 开头。标识符 区分大小写。2、变量声明var 声明一个变量let 声明一个块作用域中的局部变量const 声明一个常量变量声明和初始化是可以分开的原创 2020-06-01 16:35:03 · 679 阅读 · 0 评论 -
JS 的 单目运算符 ++ 和 -- 详解
JS 的 单目运算符 ++ 和 -- 详解1、介绍2、例子2.1 ++2.2 ++2.3 - -2.4 - -2.5 混合2.6 混合1、介绍++ 和 – 在 JS 中属于单目运算符,代表变量 自增 或 自减 。i++ // 先用后加( 先用 i ,用完之后 i 再增加 1 )++i // 先加后用( i 先自增,然后再使用 i )i-- // 先用后减( 先用 i ,用完之后 i 再减少 1 )--i // 先减后用( i 先自减,然后再使用 i )2、例子2.1 ++let原创 2020-06-01 15:39:42 · 2332 阅读 · 0 评论
分享