02 2019 档案

摘要:1、扩展运算符【三个点(...)将一个数组转为用逗号分隔的参数序列】 作用:用于函数调用 2、...作用【求最大值/拼接数组/复制数组(a2复制a1,改a2不改变a1)/合并数组/将字符串转化为真正的数组】 求最大值 拼接数组 复制数组(a2复制a1,改a2不改变a1) 合并数组 将字符串转化为真正 阅读全文
posted @ 2019-02-27 16:29 KIU的博客 阅读(3148) 评论(0) 推荐(0)
摘要:1、函数参数默认值【详情例子参照ESMAScript 6入门 (阮一峰)】 允许为函数的参数设置默认值,即直接写在参数定义的后面。【例子1】 参数变量是默认声明的,所以不能用let或const再次声明。【例子2】 参数默认值不是传值的,而是每次都重新计算默认值表达式的值。(惰性求值)【例子3】 2、 阅读全文
posted @ 2019-02-27 11:25 KIU的博客 阅读(138) 评论(0) 推荐(0)
摘要:1、Number.isFinite()和Number.isNaN()【只对数值有效】 (1)Number.isFinite()用来检查一个数值是否为有限的(finite),即不是Infinity。 【参数类型不是数值,Number.isFinite一律返回false。】 (2)Number.isNa 阅读全文
posted @ 2019-02-22 17:08 KIU的博客 阅读(126) 评论(0) 推荐(0)
摘要:1、什么是闭包? 闭包:就是函数A包含函数B,函数B可以访问函数A的变量,这里的闭包就是函数B 例子 面试题:循环中使用闭包解决“var”定义函数的问题 解决办法: 1、使用闭包 2、使用setTimeout的第三个参数,这个参数会当成timer函数的参数传入 3、使用let定义i来解决问题 阅读全文
posted @ 2019-02-20 14:34 KIU的博客 阅读(105) 评论(0) 推荐(0)
摘要:第三章 原生函数 常用的原生函数(内建函数)有: String() Number() Boolean Array() Object() Function() RegExp() Date() Erroe() Symbol() ——ES6中新加入的 new String("abc") 创建的是字符串 " 阅读全文
posted @ 2019-02-20 14:32 KIU的博客 阅读(135) 评论(0) 推荐(0)
摘要:4、字符串扩展 (1)for...of循环遍历。 let foo = [1,2,3,4,5,6] for(let i of foo){ console.log(i); } 结果: (2)includes()、startsWith()、endsWith() JavaScript 只有indexOf方法 阅读全文
posted @ 2019-02-20 14:25 KIU的博客 阅读(126) 评论(0) 推荐(0)
摘要:ES5声明变量(2):var 、function ES6声明变量(6):var、function、let、const、import和class 1、let命令和const命令 (1)let和const都不存在变量提升,都是快作用域【ES6】(立马执行),const定义的常量不能被修改 (2)暂时性死 阅读全文
posted @ 2019-02-20 14:10 KIU的博客 阅读(653) 评论(0) 推荐(0)
摘要:浅复制是对对象地址的复制,并没 有开辟新的栈,也就是复制的结果是两个对象指向同一个地址,修改其中一个对象的属性,则另一个对象的属性也会改变 深复制则是开辟新的栈,两个对象对应两个不同的地址,修改一个对象的属性,不会改变另一个对象的属性 简单来说,浅复制只复制一层对象的属性,而深复制则递归复制了所有层 阅读全文
posted @ 2019-02-19 14:42 KIU的博客 阅读(405) 评论(0) 推荐(0)
摘要:1、javascript除了全局作用域之外,只有函数可以创建的作用域。 2、作用域最大的用处就是隔离变量,不同作用域下同名变量不会有冲突 3、要到创建这个函数的那个作用域中取值——是“创建”,而不是“调用” 4、使用闭包会增加内容开销 例子1: 例子2: 闭包: 应用有两种情况————函数作为返回值 阅读全文
posted @ 2019-02-17 10:21 KIU的博客 阅读(104) 评论(0) 推荐(0)
摘要:1、prototype是函数的一个属性,并且是函数的原型对象。引用它的必然是函数【对象都是通过函数创建的】, 这个prototype的属性值是一个对象(属性的集合,再次强调!),默认的只有一个叫做constructor的属性,指向这个函数本身。 【纯属个人理解】以下代码感觉有点熟悉,有点像Java的 阅读全文
posted @ 2019-02-17 09:16 KIU的博客 阅读(226) 评论(0) 推荐(0)
摘要:1、 :三个等号我们称为等同符,当等号两边的值为相同类型的时候,直接比较等号两边的值,值相同则返回true,若等号两边的值类型不同时直接返回false。 2、==:两个等号我们称为等值符,当等号两边的值为相同类型时比较值是否相同,类型不同时会发生类型的自动转换,转换为相同的类型后再作比较。 思考:[ 阅读全文
posted @ 2019-02-15 10:43 KIU的博客 阅读(788) 评论(0) 推荐(0)
摘要:一、this的默认绑定 当一个函数没有明确的调用对象的时候,也就是单纯作为独立函数调用的时候,将对函数的this使用默认绑定:绑定到全局的window对象 例子1: function foo(){ console.log(this window) } foo();//true 重点:迷惑性的例子 f 阅读全文
posted @ 2019-02-14 13:54 KIU的博客 阅读(1768) 评论(0) 推荐(0)
摘要:一、四则运算符 加法运算符不同于其他运算符,它有以下几个特点: 运算中其中一方为字符串,那么就会把另一方也转换为字符串 如果一方不是字符串或者数字,那么就会将它转换为数字或字符串 例子 对于加法还需要注意这个表达式 'a' + + ‘b’ 因为 + ‘b’ 等于NaN,所以结果为“aNaN” 那么除 阅读全文
posted @ 2019-02-13 22:36 KIU的博客 阅读(753) 评论(0) 推荐(0)
摘要:JS中类型转换只有三种情况,分别是 转换为布尔值 【 Boolean()】 转换为数字 【 Number()、parseInt()、parseFalse() 】 转换为字符串【 String() 、str.toString() 】 原始值 转换目标 结果 number 布尔值 除了0,-0,NaN都 阅读全文
posted @ 2019-02-13 22:08 KIU的博客 阅读(1081) 评论(0) 推荐(0)
摘要:JS中会使用typeof 和 instanceof来判断一个变量是否为空或者是什么类型的。 ES6规范中有7种数据类型,分别是基本类型和引用类型两大类 基本类型(简单类型、原始类型):String、Number、Boolean、Null、Undefined、Symbol 引用类型(复杂类型):Obj 阅读全文
posted @ 2019-02-13 14:25 KIU的博客 阅读(6303) 评论(0) 推荐(0)
摘要:一、toString() 作用:toString()方法返回一个表示改对象的字符串,如果是对象会返回,toString() 返回 “[object type]”,其中type是对象类型。 二、valueOf( ) 作用:valueOf房啊发返回指定对象的原始值,JS会利用 valueOf() 方法用 阅读全文
posted @ 2019-02-12 22:24 KIU的博客 阅读(8758) 评论(0) 推荐(0)
摘要:语法 数据类型 控制流语句 函数 1、语法区分大小写(变量、函数名、操作符) 2、标识符(指变量、函数、属性的姓名或者函数的参数) 标识符的格式 第一个字符是字母、下划线(_)或者一个美元符号($) 驼峰大小写 3、严格模式 在顶部添加一行代码 “use strict” 4、基本数据类型 原始类型( 阅读全文
posted @ 2019-02-12 21:48 KIU的博客 阅读(203) 评论(0) 推荐(0)