欢送有趣味的小伙伴,一起做点有意义的事!

我发动了一个周刊翻译打算,仓库地址,拜访地址

当初还很缺气味相投的小伙伴,纯属个人兴趣,当然对于晋升英语和前端技能也会有帮忙,要求:英语不要差的离谱、github纯熟应用、有恒心、虚心、对本人做的事负责。

想参加的小伙伴,能够wx私信,也能够给仓库发issue留言,我博客也有具体的集体联系方式:daodaolee.cn

逻辑赋值操作符(&&= ||= ??=)

逻辑赋值操作符.
// 或 或等x ||= y;x || (x = y);// 与 与等x &&= y;x && (x = y);// 零合并x ??= y;x ?? (x = y);
const updateID = user => {  // 能够这样写  if (!user.id) user.id = 1  // 或者这样  user.id = user.id || 1  // 或者用逻辑赋值运算符  user.id ||= 1}
function setOpts(opts) {  opts.cat ??= 'meow'  opts.dog ??= 'bow';}setOpts({ cat: 'meow' })

数字分隔符

数字组合之间的分隔.
1_000_000_000           // 啊,十亿101_475_938.38          // 这是好多亿let fee = 123_00;       // 123 美元let fee = 12_300;       // 12,300 美元let amount = 12345_00;  // 12,345let amount = 123_4500;  // 123.45let amount = 1_234_500; // 1,234,500
0.000_001 // 百万分之11e10_000  // 10^100000xA0_B0_C0;

Promise.any 和谬误合集

Promise.any + 谬误合集.
Promise.any([  fetch('https://v8.dev/').then(() => 'home'),  fetch('https://v8.dev/blog').then(() => 'blog'),  fetch('https://v8.dev/docs').then(() => 'docs')]).then((first) => {     // 任意一个 promise 状态为 fulfilled  console.log(first);  // → 'home'}).catch((error) => {  // 所有 promise 状态都为 rejected  console.log(error);});

String.prototype.replaceAll

替换所有.
// String.prototype.replaceAll(searchValue, replaceValue)'x'.replace('', '_');// → '_x''xxx'.replace(/(?:)/g, '_');// → '_x_x_x_''xxx'.replaceAll('', '_');// → '_x_x_x_'

WeakRefs 和 FinalizationRegistry 对象

WeakRefs 和 FinalizationRegistry
let target = {};let wr = new WeakRef(target);//wr 和 target 不是同一个,wr是弱援用// 创立一个新的注册者const registry = new FinalizationRegistry(heldValue => {  // ....});registry.register(myObject, "some value", myObject);// 执行一些逻辑解决之后,如果你不再应用 `myObject`,能够解绑registry.unregister(myObject);

相干链接

原文链接

翻译打算原文