📅  最后修改于: 2023-12-03 14:48:04.308000             🧑  作者: Mango
当你在 JavaScript 中尝试访问空值(null 或 undefined)的属性时,会出现 TypeError: Cannot read property 'reviews' of null 的错误。
这通常表示你正在尝试访问一个空对象的属性。换句话说,你试图从一个值为 null 的变量中获取一个名为 'reviews' 的属性,但是 null 并没有该属性。
为了解决这个错误,你需要确保变量不是空值(null 或 undefined)然后再访问它的属性。
有几种方法可以检查一个变量是否为空值:
if (variable !== null && typeof variable !== 'undefined') {
// 访问属性
console.log(variable.reviews);
} else {
console.log("变量为空");
}
const reviews = variable !== null && typeof variable !== 'undefined' ? variable.reviews : null;
console.log(reviews);
如果你使用的是最新版本的 JavaScript,你可以使用可选链操作符(Optional Chaining Operator)来简化代码:
console.log(variable?.reviews);
这样,如果变量为 null 或 undefined,表达式会直接返回 undefined,而不会抛出错误。
以下示例演示了如何处理该错误:
const data = null;
if (data !== null && typeof data !== 'undefined') {
console.log(data.reviews);
} else {
console.log("数据为空");
}
你也可以使用可选链操作符来获取 reviews 属性:
console.log(data?.reviews);
这样,无论 data 是否为空,都不会抛出 TypeError 错误。
希望这个简短的介绍能够帮助你理解并解决 TypeError: Cannot read property 'reviews' of null 错误。