xgqfrms™, xgqfrms® : xgqfrms's offical website of cnblogs! xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!

ES6 destructuring assignment & default value & rename All In One

ES6 destructuring assignment & default value & rename All In One

const settings = {
    speed: 1
};

const {
     speed = 1,
     width = 100,
} = settings;

console.log(speed); 
// 1 - comes from settings object
console.log(width);
// 100 - fallback to default


const person = {
  first: 'eric',
  // last: undefined,
};

const {
  first: firstName,
  last: lastName = 'Eric' ,
} = person;

console.log(firstName); 
// xgqfrms
console.log(lastName); 
// Eric

Because ES6 destructuring assignment default values only kick in if the value is undefined ✅; null, false and 0 are all still values! ❌


const { dogName = '(Snoopy' } = { dogName: undefined }
console.log(dogName);
// what will it be? '(Snoopy'! ✅

const { dogName = 'snickers' } = { dogName: null }
console.log(dogName);
// what will it be? null!

const { dogName = 'snickers' } = { dogName: false }
console.log(dogName);
// what will it be? false!

const { dogName = 'snickers' } = { dogName: 0 }
console.log(dogName);
// what will it be? 0!

refs

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment



©xgqfrms 2012-2020

www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!

原创文章,版权所有©️xgqfrms, 禁止转载 🈲️,侵权必究⚠️!


posted @   xgqfrms  阅读(38)  评论(3编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2020-05-31 Wi-Fi 6
2020-05-31 bind & this & new & arrow function
2020-05-31 HTML5 tags you don't know All In One
2020-05-31 LeetCode 算法题解 & js 大数相加计算解析 All In One
2020-05-31 js function arguments types
2019-05-31 2019 阿里巴巴前端笔试题 All In One
2019-05-31 vue & vue router & dynamic router
点击右上角即可分享
微信分享提示