写点什么

谷歌在 Chrome 74 中试验内置模块 KV Storage

  • 2019-04-29
  • 本文字数:1126 字

    阅读完需:约 4 分钟

谷歌在Chrome 74中试验内置模块KV Storage

谷歌最近宣布,他们计划在 Chrome 的未来版本中交付两个新的WICG提案。KV Storage(键-值存储)试图提供 localStorage 的便利,但性能更好。其目的是利用导入映射提案将其作为内置模块的第一个示例交付。


JavaScript 生态系统在本地存储和缓存数据方面存在一些缺陷。正如谷歌 Web 平台软件工程师 Philip Walton 所解释的那样:


在过去十年的大部分时间里,浏览器厂商和 Web 性能专家一直在说,localStorage 很慢,Web 开发人员应该停止使用它。公平地说,说这话的人没错。LocalStorage 是一个同步 API,它会阻塞主线程,任何时候访问它都有可能阻止页面的交互。问题是,localStorage API 非常简单,而且 localStorage 的唯一异步替代方案是 IndexedDB,(面对现实吧)并不以其易用性或受欢迎的 API 而闻名。


Web Incubator CG (WICG)最近将 KV Storage 提升为 W3C IndexedDB 规范的一部分。KV Storage 类似于 localStorage,但更现代,并在 IndexedDB 之上。该规范要求浏览器厂商将其作为内置模块实现,并使用 IndexedDB 作为其后台存储。


以下是规范中提供的 KV Storage API 使用示例:


import { storage } from "std:kv-storage"; // specifier prefix not final
(async () => { await storage.set("mycat", "Tom"); console.assert(await storage.get("mycat") === "Tom");
for await (const [key, value] of storage.entries()) { console.log(key, value); } // Logs "mycat", "Tom"
await storage.delete("mycat"); console.assert(await storage.get("mycat") === undefined);})();
复制代码


对于支持 IndexedDB 的浏览器,有一个KV Storage polyfill


KV Storage 模块是按照JavaScript标准库提案及其导入映射支持中的定义实现的。


导入映射不是一个新概念,它是早期 JavaScript 模块系统的一部分,就像 AMD 和其他编程语言中的模块系统。它们是新近才包含在标准 ES 模块中的。这个导入映射提案提供了对 JavaScript import 语句和 import()表达式所获取的 URL 的控制,并允许在非导入上下文中重用映射。导入映射允许简化导入语句、回退模块解析、内置模块 polyfill 以及在 fetch、image 和 link 标记之间共享上下文等等。


这两个备受期待的新特性的成功实现,将显著改进将特性添加到 JavaScript 未来版本的过程,并提供更加方便的 Web API。导入映射和内置模块完善了可扩展Web宣言中缺失的部分。


现在,希望试验 KV Storage 的开发人员可以利用 polyfill,或者安装 Chrome Dev 或 Chrome 74 的 Canary 版本。在这些特性的主流版本发布之前,开发者可以注册KV Storage最初试用版,所有 Chrome 74+用户都可以使用这些特性。


查看英文原文Google Experiments With Key-Value Storage, Built-In Modules in Chrome 74


2019-04-29 08:005231
用户头像

发布了 820 篇内容, 共 566.3 次阅读, 收获喜欢 1591 次。

关注

评论

发布
暂无评论
发现更多内容

设计一个百万级的消息推送系统,mybatis技术原理

Java 程序员 后端

诡异的Redis数据库内存,空间很大,内存使用还是不理想

Java 程序员 后端

详解SpringBoot(2,java入门视频教学

Java 程序员 后端

说一下 jvm 有哪些垃圾回收器?(1),java异常面试题

Java 程序员 后端

血赚!阿里P9整理出内部500多页最全双十一顶级秒杀方案笔记

Java 程序员 后端

SpringCloud+Boot2+Docker+ES打造45K+Star的微服务项目,附教程

Java 程序员 Spring Cloud

解析分布式应用框架Ray架构源,java技术面试常见问题

Java 程序员 后端

被Netty搞昏了头,先学一下幂等性压压惊吧,java程序员面试宝典pdf

Java 程序员 后端

解密阿里亿级流量核心架构:5个技术+200案例 —阿里P8

Java 程序员 后端

说到分布式,重要的Paxos算法你看透了么?,简述mybatis工作原理

Java 程序员 后端

被Netty搞昏了头,先学一下幂等性压压惊吧(1),只需一篇文章吃透Java多线程技术

Java 程序员 后端

计算机网络物理层,Java开发工程师笔试题目

Java 程序员 后端

“元宇宙”火出圈,不仅是区块链与科技圈,小说里也出现了

区块链日报

区块链 人工智能 facebook vr 元宇宙

计算机网络学习笔记第一章(概述) 超详细整理,springboot注解的工作原理

Java 程序员 后端

详解:Java的重写方法与示例,用22天总结了一份完美的SQL学习笔记

Java 程序员 后端

微信朋友圈高性能复杂度分析

小何

架构实战营

Vue进阶(幺伍柒):Form 表单重置失败问题解决

No Silver Bullet

Vue 10月月更

区块链日报网元宇宙频道正式上线

区块链日报

解开疑惑之:全面解析腾讯会议的视频前处理算法,java搭建分布式架构

Java 程序员 后端

计算机系统可靠性分析评测技术【全讲解】,深入理解linux内核百度网盘

Java 程序员 后端

话不多说直接上才艺“来吧!展示,【高级Java架构师系统学习

Java 程序员 后端

说一下 jvm 有哪些垃圾回收器?,kalilinux渗透教程百度云

Java 程序员 后端

模块2-朋友圈的架构设计

Geek_cb2b43

被 boss 直聘转发过多而“封杀”的 2021 年全套 高级面试题有多牛

Java 程序员 后端

五分钟搞懂缓存

俞凡

架构

模块二作业

沐风

架构实战营第二模块总结

小何

解放双手!IDEA常用代码一键补全,你学会了吗,最新阿里+头条+腾讯大厂Java笔试真题

Java 程序员 后端

读Java虚拟机类加载引发的血案,阿里P8大牛手把手教你

Java 程序员 后端

架构实战训练营模块二

人生就是梦

架构实战营

蚂蚁金服面试经验分享,阿里的offer真的不难,初面蚂蚁金服

Java 程序员 后端

谷歌在Chrome 74中试验内置模块KV Storage_大前端_Dylan Schiemann_InfoQ精选文章