如何使用打字稿检查对象内部的键和值
How to check key and values inside in object using typescript
我尝试使用 ? 运算符使用打字稿获取对象中的值。但它抛出一个错误。
const data = {sample:{sample1:''hai'}}
! 操作员使用它的工作正常
成功案例
if(data.sample!['sample1']){
console.log('hai')
}
?. 运算符使用了它的抛出错误
错误案例
if(data.sample?.['sample1']){
console.log('hai')
}
如何使用取值?.运算符
?.
运算符(又名可选链接运算符,又名可选 属性 访问运算符,又名 Elvis 运算符)仅在 TypeScript 3.7 中引入。
在 TypeScript 3.7+ 中,以下代码编译和执行没有问题:
const data = { sample: { sample1: 'hai' } };
console.log(data.sample?.['sample1']);
由于您使用 typescript-3.6 标记了您的问题,您将不得不升级您的 TypeScript 版本,或者恢复为更明确地检查 null
或 undefined
的值.
我尝试使用 ? 运算符使用打字稿获取对象中的值。但它抛出一个错误。
const data = {sample:{sample1:''hai'}}
! 操作员使用它的工作正常
成功案例
if(data.sample!['sample1']){
console.log('hai')
}
?. 运算符使用了它的抛出错误
错误案例
if(data.sample?.['sample1']){
console.log('hai')
}
如何使用取值?.运算符
?.
运算符(又名可选链接运算符,又名可选 属性 访问运算符,又名 Elvis 运算符)仅在 TypeScript 3.7 中引入。
在 TypeScript 3.7+ 中,以下代码编译和执行没有问题:
const data = { sample: { sample1: 'hai' } };
console.log(data.sample?.['sample1']);
由于您使用 typescript-3.6 标记了您的问题,您将不得不升级您的 TypeScript 版本,或者恢复为更明确地检查 null
或 undefined
的值.