写点什么

谷歌在 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:005208
用户头像

发布了 806 篇内容, 共 552.5 次阅读, 收获喜欢 1584 次。

关注

评论

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

数据分析与AI丨在企业环境中利用知识图谱赋能生成式 AI

Altair RapidMiner

人工智能 AI 数据分析 知识图谱 生成式AI

区块链 RWA软件系统的开发框架

北京木奇移动技术有限公司

区块链技术 软件外包公司 RWA开发

不只更便宜,还更「绿色」——DeCloud如何助力减少碳排放?

PowerVerse

算力 DePIN 碳排放 DeCloud

AI 加速企业数智化 | 2025企业AI创新峰会·河南站圆满收官

用友智能财务

AI 财务 会计

解读MES:企业数字化工厂的核心支撑与解决方案

万界星空科技

数字化转型 制造业 mes 制造业工厂 生产管理MES系统

2025混合应用开发新路径:降本增效双驱动策略

xuyinyin

AI Agent落地竞速,金智维卡位千亿级企业市场

脑极体

AI

关注网络安全合规的动态

黑龙江陆陆信息测评部

LED租赁屏如何选购及保养

Dylan

广告 LED LED display AI算力租赁 LED屏幕

飞桨新一代框架3.0正式发布:加速大模型时代的技术创新与产业应用

百度Geek说

百度 飞桨

TapData 与 StarRocks 完成兼容性互认证,携手共建实时数据智能生态,联合打造端到端全链路实时数仓解决方案

tapdata

实时数仓 数据集成 StarRocks 实时数据平台 tapdata和starrocks

AI超新星集体爆发!一文读懂Midjourney V7、LLaMa 4和DreamActor-M1如何改变世界

Seachal

如何使用 AI 辅助学习 Python - 通义灵码功能全解析

阿里云云效

通义灵码助力Redis开发:智能问答与代码生成技巧

阿里巴巴云原生

人工智能与智能制造:如何利用AI推动工业自动化与生产优化?

天津汇柏科技有限公司

人工智能 智能制造 AI人工智能

什么是 Redis?为什么你应该关心它?

数据追梦人

如何使用 AI 辅助学习 Python - 通义灵码功能全解析

阿里巴巴云原生

Python

区块链RWA软件系统的安全性

北京木奇移动技术有限公司

区块链技术 软件外包公司 RWA开发

AI 技术在英语学习中的应用

北京木奇移动技术有限公司

软件外包公司 AI口语练习 AI英语学习

天润融通实测案例告诉你,AI进化到哪一步了?

天润融通

《一文讲透》第7期:KWDB 巧用标签与索引优化查询性能

KaiwuDB

数据库· #程序员

手把手教你5招!高效对接微店商品API接口,数据调取快到飞起

代码忍者

微店商品详情API接口

区块链 RWA系统的主要功能

北京木奇移动技术有限公司

区块链 软件外包公司 RWA开发

【FAQ】HarmonyOS SDK 闭源开放能力 — IAP Kit(6)

HarmonyOS SDK

harmoyos

深入研究:1688拍立淘图片搜索API详解

tbapi

1688API 1688拍立淘接口 1688图片识别接口 1688图片搜索API

【重磅】敲敲云零代码 "AIGC应用大模型" 上线了~

JEECG低代码

零代码 AIGC 流程编排 敲敲云 AI 大模型

天润融通AI Agent,干洗行业客服成本直降90%的秘诀

天润融通

鹰角:EMR Serverless Spark 在《明日方舟》游戏业务的应用

阿里云大数据AI技术

大数据 spark 阿里云 Serverless EMR

深入研究:1688商品列表API详解

tbapi

1688商品列表接口 1688API 1688商品数据采集

区块链RWA系统的技术难点

北京木奇移动技术有限公司

区块链技术 软件外包公司 RWA开发

通义灵码助力Redis开发:智能问答与代码生成技巧

阿里云云效

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