type Node = {
value: Value;
next: Node
} | null;function output(n: Node) { function isEmpty() { return n === null;
} // 改为 n === null 则下面警告不会出现
if (isEmpty()) { console.log('empty');
} else { // 提示n有可能是null
n.next = {value: 'yo', next: null};
}
}这只是一个简单的例子,但是很多时候我们会在isEmpty里面写很多逻辑,但是这些逻辑通常会避免n === null,所以else里面的语言应该是会通过的。这要怎么修改呢?
1 回答
慕雪6442864
TA贡献1812条经验 获得超5个赞
function isEmpty(n: Node): n is null { return n === null; } // 改为 n === null 则下面警告不会出现 if (isEmpty(n)) { console.log('empty'); }
- 1 回答
- 0 关注
- 407 浏览
添加回答
举报
0/150
提交
取消