CacheStorage.has()
Experimental: 这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。
CacheStorage
对象的 **has()
**方法返回一个 Promise
对象,当 Cache
对象有 cacheName
时被处理为 true
。
语法
caches.has(cacheName).then(function(boolean) { // true: 缓存存在 });
返回值
返回一个 Promise
对象,缓存存在时 resolve 的布尔值为 true
否则为 false
。
参数
- cacheName
-
一个表示你正在
CacheStorage
中查找的Cache
对象 name 的DOMString
.
例子
在下面的例子中首先检测是否有名为 v1 的缓存存在,如果存在我们会向其添加内容,,如果不存在我们会做些对应的初始化动作。
caches.has('v1').then(function(hasCache) {
if (!hasCache) {
someCacheSetupfunction();
} else {
caches.open('v1').then(function(cache) {
return cache.addAll(myAssets);
});
}
}).catch(function() {
// 处理异常
});
规范
Specification |
---|
Service Workers # cache-storage-has |
浏览器兼容性
BCD tables only load in the browser