
获得徽章 0
- 再学 ES6 (七)
Object.assign的作用是合成两个对象。assin 是分派的意思,把后面的参数对象分派到第一个参数对象。
如果合并对象有冲突的键名,以后一个为准。
assign 是浅拷贝。
Object.assign的作用是合成两个对象。assin 是分派的意思,把后面的参数对象分派到第一个参数对象。
如果合并对象有冲突的键名,以后一个为准。
assign 是浅拷贝。
Array.from 把类似数组变成真正的数组。
Array.from 填充指定值的数组,可指定起始位置。
Array.find 查找数组
Array.findIndex 查找数组下标
String.includes 和 String.indexof 差不多,只不过一个返回下标,一个是返回布尔值
String.repeat 返回一个重复的字符串,重复次数根据传入的次数。展开等人赞过36 - 再学 ES6 (六)
当我们 新建一个空对象的时候,理论上这个对象是没有任何的方法的,但是我们可以使用 tostring 等方法,原因就是我们通过原型挂载上去的。
原型 === 共用属性,也就是说我们使用原型,也就是想要实现共用属性,不然每创建一个对象,我都要创建 tostring。
现在有了原型,我直接调用共用属性。
例子:
obj.toString === window.Object.prototype.toString
window.Object.prototype.toLocaleString === obj.toLocaleString
比如我们声明了一个数组 a,然后数组 a的所有方法(push 等)其实都是一个引用对象,也就是都是一个内存地址,指向的是全局的 Array.push 方法。
构造函数 : 用来创建某个类的对象的函数
类:拥有相同属性的对象展开赞过评论1 - 再学 ES6 (五)
set 存储任何数据类型的唯一值,包括引用。可以自动去重。
has,add,delete,size,clear,key,value,entries。
WeakSet 是弱化版的 set,存储的是对象的引用,而不是值,所以当Weakset 里面对象没有任何引用是,就会被垃圾回收清除。
这个是没keys,value,entryties。
map 允许任何数据类型做对象的键名。
has,set,delete,get,clear,key,value,entries。
和 WeakMap 一样,都是弱引用,其中,键值必须是对象。没办法遍历,即没办法使用 keys,value等方法。展开赞过评论3 - 再学 ES6 (四)symbol
symbol 函数会返回symbol 类型的值。每个 symbol 函数返回的值都是唯一的。
var a = 'a';
var a1 = 'a';
a === a1 //true
var b = Symbol()
var b1 = Symbol()
b == b1 // false
不支持 new symbol语法。
symbol 是一种基本类型数值。
symbol()唯一的作用是作为对象的属性名。
symbol 可以在()里面写上描述,但是这是没有意义的。只是为了方便程序员识别。
symbol 作为对象的键名,可以做到把这个属性给隐藏起来,只能在当前作用域读取,外面读取不到。这样子可以做到 私有属性,类似 java 的private 。展开赞过评论1 - 再学 ES 6 (二)
this 是 call 的第一个参数。
this 是 call 的第一个参数。
this 是 call 的第一个参数。
fn() 等价于 fn.call(fn)。
所以 this 是等于fn。
因为this 的值都是在调用的时候才决定的。所以我们一般会在外面声明一个 that = this,然后在函数里面写 that. 。 这样子就确定了我们会一直使用外层的 this。
箭头函数的存在就是为了消灭 this。
函数可以设置默认参数(a= 0,b = 0),不需要在函数体里面写 || 运算符了。
函数多个参数可以使用...args 展开。
[1,...arr] = [1,2,3] 函数可以使用...展开操作符来展开。
解构赋值就是把等号右边的数据结构给解开,然后然后给右边的变量赋值。
对象同名属性可以缩写。
可以使用 函数加上模板字符串的方式来进行判断。根据模板字符串里面的变量来进行不同的操作。比如传入的是一个美女还是汉子,做出不同的反应。展开等人赞过44