我试图将performance.memory.jsHeapSizeLimit的值分配给一个变量,但由于Safari不支持它,因此当performance.memory.jsHeapSizeLimit不起作用时,我想将值0分配给同一个变量。
我在做这个:
(function () {
if (performance.memory.jsHeapSizeLimit !== undefined) {
var MAXmemoryAvailable = performance.memory.jsHeapSizeLimit;
} else {
var MAXmemoryAvailable = 0; }
})();
字符串
问题是,在Safari上它不工作,我有错误:undefined不是一个对象(正在评估“performance.memory. jsHeapSizeLimit”)
有什么办法吗?
1条答案
按热度按时间hm2xizp91#
您可以通过添加
?
来使用optional chaining
:可选的chaining(
?.
)操作符访问对象的属性或调用函数。如果使用此运算符访问的对象或调用的函数为undefined或null,则表达式将短路并计算为undefined,而不是抛出错误。范例:
字符串
Firefox不支持
performance.memory
(因此也不支持performance.memory.jsHeapSizeLimit
),它显示0
。