dee*_* zg 6 typescript ecmascript-6
Typescript(或者我们应该说ES)不允许对null/undefined对象进行解构.它抛出TypeError.
所以,让我们说我们有类似的东西
let {a,b,c} = D;
Run Code Online (Sandbox Code Playgroud)
哪里D可以null.
如果我们需要使用空值检查进行条件解构赋值,那么我们会为那些旨在减少它的东西创建样板代码.
在这样的情况下使用它的最优雅的方法是什么,或者我们应该仅为保证的非空对象使用解构?
Ori*_*ori 13
您可以使用空对象作为后备,如果D是null,undefined则指定的变量将是undefined.
const D = null;
const { a, b, c } = D || {};
console.log(a, b, c);Run Code Online (Sandbox Code Playgroud)
另一个选择是使用对象传播,因为传播null或undefined导致空对象(参见此答案).
const D = null;
const { a, b, c } = { ...D };
console.log(a, b, c);Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3555 次 |
| 最近记录: |