共计 1064 个字符,预计需要花费 3 分钟才能阅读完成。
String.prototype.replaceAll
都用过 replace,但只会匹配字串中第一个符合条件的字符。如果心愿替换全副符合条件的,以往个别会用到正则。这状况下 replaceAll 提供了更不便的写法。
const str = 'I love JS,I enjoy it.'
console.log(str.replace('I','You'))
//=>You love JS,You enjoy it.
Private methods and getter/setter
新增在办法前增加 #标记示意其为公有办法。
Class Product {
#showName{console.log('book-name')
}
showPrice{console.log('19.9')
}
}
const product = new Product()
person.getName();
// => 报错
同样能够用在获取器 getter 上:Class Product {
get #name{return 'book-name'}
get price{return 19.9}
}
const product = new Product()
console.log(product.name)
// =>undefined
Promise.any()
Promise 新增 any 办法,可承受一个蕴含多个申请的数组。返回当中最快响应的申请后果。
const API = 'https://api.github.com/users';
Promise.any([fetch(`${API}/cyinside`),
fetch(`${API}/vuejs`),
])
.then(response => response.json())
.then(({login}) => console.log(`hi ${login}`))
// => hi vuejs
Logical assignment operators
a ||= b
// 等价于
a || (a = b)
a &&= b
// 等价于
a && (a = b)
a ??= b
// 等价于
a ?? (a = b)
Numeric separators
新增容许能够在数值两头增加下划线分隔,减少数值可读性。
const x = 1_000_000_000
console.log(x)
// => 1000000000
WeakRef
WeakRef 代表弱援用,主要用途是实现 对大型对象的缓存或映射 。当不想长时间保留大量曾经应用的缓存和映射的时候,能够容许内存被垃圾回收。如果当前须要它,再生成新的缓存。
具体解释可看[[MDN] https://developer.mozilla.org… ]
正文完
发表至: javascript
2021-02-28