位置: 编程技术 - 正文

Javascript 计算字符串在localStorage中所占字节数(js计算字体宽度)

编辑:rootadmin

推荐整理分享Javascript 计算字符串在localStorage中所占字节数(js计算字体宽度),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript计算字符个数,js实现字符串计算器,js计算字符串长度 汉字长度,javascript计算字符个数,javascript 计算字符串长度,js计算字符串长度 汉字长度,js中怎么计算字符长度,javascript 计算字符串长度,内容如对您有帮助,希望把文章链接给更多的朋友!

最近项目有个需求要用js计算一串字符串写入到localStorage里所占的内存,众所周知的,js是使用Unicode编码的。而Unicode的实现有N种,其中用的最多的就是UTF-8和UTF-。因此本文只对这两种编码进行讨论。

下面这个定义摘自维基百科( Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,可以表示Unicode标准中的任何字符,且其编码中的第一个字节仍与ASCII相容,使用一至四个字节为每个字符编码

其编码规则如下:

字符代码在 ? F之间的,用一个字节编码;

Javascript 计算字符串在localStorage中所占字节数(js计算字体宽度)

? FF之间的字符用两个字节; ? D7FF 和 E ? FFFF之间的用三个字节,注: Unicode在范围 D-DFFF 中不存在任何字符; ? FFFF之间的用4个字节。

而UTF- 则是定长的字符编码,大部分字符使用两个字节编码,字符代码超出 的使用四个字节,如下:

? FFFF 两个字节; ? FFFF 四个字节。

一开始认为既然页面用的是UTF-8编码,那么存入localStorage的字符串,应该也是用UTF-8编码的。但后来测试发现,明明计算出的size是不到5MB,存入localStorage却抛异常了。想了想,页面的编码是可以改的。如果localStorage按照页面的编码存字符串,不就乱套了?浏览器应该都是使用UTF-编码的。用UTF-编码计算出5MB的字符串,果然顺利写进去了。超过则失败了。

好了,附上代码实现。计算规则就是上面写的,为了计算速度,把两个for循环分开写了。

chrome调试javascript详解 一、ConsoleAPIConsole.assert()判断第一个参数是否为真,false的话抛出异常并且在console输出相应信息。Console.count()以参数为标识记录调用的次数,调用时在con

JS+CSS实现的经典圆角下拉菜单效果代码 本文实例讲述了JS+CSS实现的圆角下拉菜单效果代码。分享给大家供大家参考,具体如下:相信不少朋友会喜欢这一款菜单,CSS+JS实现的圆角下拉菜单,

在javascript中随机数 math random如何生成指定范围数值的随机数 今天有朋友向我请教:JavaScript怎么生成指定范围数值随机数。Math.random()这个方法相信大家都知道,是用来生成随机数的。不过一般的参考手册时却没有

标签: js计算字体宽度

本文链接地址:https://www.jiuchutong.com/biancheng/381622.html 转载请保留说明!

上一篇:基于JavaScript实现移动端TAB触屏切换效果(javascript基于什么的语言)

下一篇:chrome调试javascript详解(Chrome调试技巧)

  • 所得税费用会计分录
  • 国税和地税的区别
  • 免抵退税和留抵退税可以一起退吗
  • 今日头条测试收款如何记账?
  • 个人名字的发票专用章
  • 上个月发票忘记开了怎么办
  • 个税申报和工资表不符
  • 加油票抬头开错可以更换吗
  • 暂估材料收到发票后是更正还是红冲
  • 30万免税超过30万
  • 应收票据和应收账款的区别举例
  • 对外销售产品
  • 销售息税前利润是什么
  • 超市销售购物卡怎么开票
  • 利息保障倍数计算公式资本化利息
  • 一般账户网银可以发工资吗
  • 无发生额有没有对账单
  • 技术变动成本是指
  • 什么是法?法的本质特征是什么
  • 一般纳税人为什么要开专票
  • 公司注销需要注意的会计科目
  • 基金赎回未到账可继续买吗?
  • 先计提房租后收到发票 发票附在哪
  • 股权并购和资产的关系
  • 抵扣发票可以在哪里抵扣
  • 租金不开专票合理吗
  • 公共基础设施折旧年限表 20
  • 抄报汇总对比通用怎么写
  • 进口报关单保费
  • 支付网银年费计入什么科目
  • Windows11怎么连接网络
  • 工资薪金所得个人所得税税率表
  • 如何查看电脑的型号和配置
  • 员工伙食费明细表
  • linux统计代码总行数
  • 其他应收和其他应付可以共用吗
  • 发财树叶子发黄怎样补救
  • php与ajax交互
  • thinkphp怎么运行
  • 什么是webrip
  • 网站伪静态有什么用
  • 百度文心一言对未来商业的影响
  • 原生php和框架php的区别
  • 融资租赁的利息进项税可以抵扣吗
  • mysql union和join
  • 被盗的固定资产如何处理
  • 自然人个税申报密码怎么获取
  • sql server功能选择
  • 原材料暂估入库分录
  • 公对公转账在手机上怎么操作
  • 统一机构信用代码最后一位校验码
  • 有限合伙企业如何报税
  • 以前年度损益调整是什么意思
  • 营业外收入是损益类账户吗
  • 生产成本福利费如何分摊
  • 支付宝企业账户在哪里查看
  • 事业单位用电收费标准
  • 开红字发票必须要收回原发票并作废吗?
  • 收到银行承兑汇票计入什么科目
  • 营业收入和销售收入的比值
  • myeclipse连接mysql要装软件吗
  • win7任务管理器是灰色的
  • arm和x86性能差多少
  • winXP运行内存查看
  • centos7更改默认内核
  • 怎么设置开机启动项?
  • win7如何打开命令窗口
  • win7共享打印机提示0x000709
  • win8取消自动更新
  • css如何设置div位置
  • shell监控脚本例子大全
  • [android] android开发中常用的Eclipse快捷键
  • 批处理实现语音报警
  • android10获取设备id
  • 广西地税局局长
  • 新加坡政治体制的介绍
  • 浙江电子税局
  • 浙江省国家电子税务局官网登录
  • 上海市国家税务局
  • 珠海市香洲区有火车站吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设