当前位置:首页 > 科技  > 软件

不管你信不信,面试官让我使用 JS 计算 LocalStorage 的容量!

来源: 责编: 时间:2024-05-09 17:55:44 236观看
导读Hello,大家好,我是 Sunday。现在的面试总会遇到很多“奇葩”的问题,不过本着“存在即合理”的态度,从“深入JS”的角度来看,这些个性化的面试题还是挺有意思的。所以,咱们今天就来看一个“奇葩”面试题:如何使用JS来计算Loca

Hello,大家好,我是 Sunday。B4S28资讯网——每日最新资讯28at.com

现在的面试总会遇到很多“奇葩”的问题,不过本着“存在即合理”的态度,从“深入JS”的角度来看,这些个性化的面试题还是挺有意思的。B4S28资讯网——每日最新资讯28at.com

所以,咱们今天就来看一个“奇葩”面试题:如何使用JS来计算LocalStorage的容量B4S28资讯网——每日最新资讯28at.com

本文为译文:https://javascript.plainenglish.io/believe-it-or-not-interviewer-asks-me-to-calculate-localstorage-capacity-using-javascript-12928482e096B4S28资讯网——每日最新资讯28at.com

01:什么时候需要关注 LocalStorage 空间?

LocalStorage 是浏览器提供的一种本地会话存储的方式,最大支持 5M 的存储空间。B4S28资讯网——每日最新资讯28at.com

虽说它的存储空间是有上限的,但是我相信很多同学都和我一样,在日常开发中其实并没有关注过这个问题。毕竟 5M 的默认存储针对数据而言已经非常大了。B4S28资讯网——每日最新资讯28at.com

但是,如果你在面对一些足够复杂的项目,涉及到大量的数据本地存储且没有使用 IndexDB 的前提下,那么关注 LocalStorage 存储空间位置,就变得有意义了。B4S28资讯网——每日最新资讯28at.com

02:如何计算容量

为了计算总容量,我们将使用 10KB 为单位,相当于 10240 字节。我们将不断向 LocalStorage 添加 10KB 块,直到它已满并引发错误。此时,我们统计所有累积的数据,这就是总存储量!B4S28资讯网——每日最新资讯28at.com

在 JavaScript 中,字符串使用 UTF-16 编码存储。这意味着每个字符通常占用 2 个字节的内存空间。但是,对于某些特殊字符(例如表情符号或某些不太常见的语言字符),它们可能最多使用 4 个字节。B4S28资讯网——每日最新资讯28at.com

"a".length // 1" 
                

本文链接:http://www.28at.com/showinfo-26-87677-0.html不管你信不信,面试官让我使用 JS 计算 LocalStorage 的容量!

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 系统整容纪:责任链设计模式的应用实战

下一篇: Container包中的那些容器,你知道几个?

标签:
  • 热门焦点
  • 6月iOS设备性能榜:M2稳居榜首 A系列只能等一手3nm来救

    没有新品发布,自然iOS设备性能榜的上榜设备就没有什么更替,仅仅只有跑分变化而产生的排名变动,毕竟苹果新品的发布节奏就是这样的,一年下来也就几个移动端新品,不会像安卓厂商,一
  • 掘力计划第 20 期:Flutter 混合开发的混乱之治

    在掘力计划系列活动第20场,《Flutter 开发实战详解》作者,掘金优秀作者,Github GSY 系列目负责人恋猫的小郭分享了Flutter 混合开发的混乱之治。Flutter 基于自研的 Skia 引擎
  • Golang 中的 io 包详解:组合接口

    io.ReadWriter// ReadWriter is the interface that groups the basic Read and Write methods.type ReadWriter interface { Reader Writer}是对Reader和Writer接口的组合,
  • 得物效率前端微应用推进过程与思考

    一、背景效率工程随着业务的发展,组织规模的扩大,越来越多的企业开始意识到协作效率对于企业团队的重要性,甚至是决定其在某个行业竞争中突围的关键,是企业长久生存的根本。得物
  • 深度探索 Elasticsearch 8.X:function_score 参数解读与实战案例分析

    在 Elasticsearch 中,function_score 可以让我们在查询的同时对搜索结果进行自定义评分。function_score 提供了一系列的参数和函数让我们可以根据需求灵活地进行设置。近期
  • 三分钟白话RocketMQ系列—— 如何发送消息

    我们知道RocketMQ主要分为消息 生产、存储(消息堆积)、消费 三大块领域。那接下来,我们白话一下,RocketMQ是如何发送消息的,揭秘消息生产全过程。注意,如果白话中不小心提到相关代
  • 阿里大调整

    来源:产品刘有媒体报道称,近期淘宝天猫集团启动了近年来最大的人力制度改革,涉及员工绩效、层级体系等多个核心事项,目前已形成一个初步的“征求意见版”:1、取消P序列
  • 造车两年股价跌六成,小米的估值逻辑变了吗?

    如果从小米官宣造车后的首个交易日起持有小米集团的股票,那么截至2023年上半年最后一个交易日,投资者将浮亏59.16%,同区间的恒生科技指数跌幅为52.78%
  • iQOO Neo8 Pro评测:旗舰双芯加持 最强性能游戏旗舰

    【Techweb评测】去年10月,iQOO推出了一款Neo7手机,该机搭载了联发科天玑9000+,配备独显芯片Pro+,带来了同价位段最佳的游戏体验,一经上市便受到了诸多用
Top