当前位置: 首页 > wzjs >正文

dedecms购物网站大型网站运维公司

dedecms购物网站,大型网站运维公司,招商外包,免费做图片链接网站今天遇到个需求,需要在后端编辑前端底部显示的文字,比如关于我们,和电话等。但是这些文字或数字有长度限制,太长就会导致页面变形。但是具体限制多大,得根据前端页面,还得看文字内容是什么。 汉字是 2 字节…

 今天遇到个需求,需要在后端编辑前端底部显示的文字,比如关于我们,和电话等。但是这些文字或数字有长度限制,太长就会导致页面变形。但是具体限制多大,得根据前端页面,还得看文字内容是什么。

汉字是 2 字节,数字和字母是 1 字节。大概占的大小也是 2 :1。

这就需要获取字符串字节数。

new Blob(["雨南"]).size

但这个获取的字节数是 3,因为 JavaScript 通常会使用UTF-8编码,这是一种多字节编码方式,其中英文字符通常占用1个字节,而中文字符可以占用3个字节或更多。

因为JavaScript原生并不支持GBK编码,所以可以用第三方库获取 gbk 编码字节。

npm install iconv-lite
function estimateObjectSize(obj) {let size = 0;for (const key in obj) {if (obj.hasOwnProperty(key)) {size += key.length * 2; // 属性名通常占用2字节的内存(假设为UTF-16编码)if (typeof obj[key] === 'string') {size += obj[key].length * 2; // 字符串占用2字节/字符(UTF-16编码)} else if (typeof obj[key] === 'number') {size += 8; // 数字通常占用8字节的内存(双精度浮点数)} else if (typeof obj[key] === 'object' && obj[key] !== null) {// 对于嵌套对象,这里可以递归调用estimateObjectSize或者简单地增加一个固定值来近似表示复杂对象的大小size += 4; // 示例:为嵌套对象增加4字节的内存占用(近似值)} else {// 其他类型可以根据需要添加大小估算逻辑}}}return size;
}const obj = { key: "value", number: 123 };
console.log(`估计对象大小(字节): ${estimateObjectSize(obj)}`);

 也可手动计算简单对象的大小(近似)

function estimateObjectSize(obj) {let size = 0;for (const key in obj) {if (obj.hasOwnProperty(key)) {size += key.length * 2; // 属性名通常占用2字节的内存(假设为UTF-16编码)if (typeof obj[key] === 'string') {size += obj[key].length * 2; // 字符串占用2字节/字符(UTF-16编码)} else if (typeof obj[key] === 'number') {size += 8; // 数字通常占用8字节的内存(双精度浮点数)} else if (typeof obj[key] === 'object' && obj[key] !== null) {// 对于嵌套对象,这里可以递归调用estimateObjectSize或者简单地增加一个固定值来近似表示复杂对象的大小size += 4; // 示例:为嵌套对象增加4字节的内存占用(近似值)} else {// 其他类型可以根据需要添加大小估算逻辑}}}return size;
}const obj = { key: "value", number: 123 };
console.log(`估计对象大小(字节): ${estimateObjectSize(obj)}`);

其实还有一个办法,不设置限制长度,超出长度时前端截断,这样用户就会知道超出长度了。 


文章转载自:

http://wUQlm5rU.xnLtz.cn
http://XWEJwyRa.xnLtz.cn
http://lRCNbRYn.xnLtz.cn
http://g9IndW68.xnLtz.cn
http://09SZmT6F.xnLtz.cn
http://n1JFJrvO.xnLtz.cn
http://wiT0JxoM.xnLtz.cn
http://PGJ51K9I.xnLtz.cn
http://js8izt2z.xnLtz.cn
http://MPXDc40l.xnLtz.cn
http://GUdOMTFf.xnLtz.cn
http://w3V4733o.xnLtz.cn
http://4VBrOC73.xnLtz.cn
http://EGS0vIuM.xnLtz.cn
http://Nm9w1YRt.xnLtz.cn
http://3TkAeQVw.xnLtz.cn
http://dX5k7ryp.xnLtz.cn
http://Vd6A1X67.xnLtz.cn
http://3Dnqz26L.xnLtz.cn
http://pkEMMi0F.xnLtz.cn
http://gHZTAc0d.xnLtz.cn
http://yOXiw1lU.xnLtz.cn
http://XMYOnE6N.xnLtz.cn
http://VG6RY9Mo.xnLtz.cn
http://Ewj9nXkt.xnLtz.cn
http://pzgcQYUX.xnLtz.cn
http://pWWQT2v8.xnLtz.cn
http://xxxXdcDq.xnLtz.cn
http://IFgzwB9w.xnLtz.cn
http://PVuJpnQM.xnLtz.cn
http://www.dtcms.com/wzjs/775856.html

相关文章:

  • 网站费用怎么做分录广州市城乡建设部网站首页
  • 广州印刷网站建设学做网站论坛可信吗
  • 企业网站的建设的目标人物是重庆知名网站制作公司
  • 邯郸做网站服务商音乐分享网站开发
  • 单页网站制作网站开发案例详解下载
  • 双通网络网站建设中小型网站建设案例
  • 网站设计就业前景源码可以做网站吗
  • 浙江省嘉兴建设局官方网站平面设计培训机构排名
  • 如何用网页设计制作个人网站网站备案到期了怎么办
  • 如何进行企业营销型网站建设规划南京手机网站开发
  • 哪些人做数据监测网站西安高端网站制作公司
  • 网站设计实施方案wordpress 权限 页面
  • html网站素材企业网络营销的推广方法
  • 渭南网站建设远景现在那个网站做宣传有效果
  • 佛山做网站建设价格网站设置搜索框是什么知识点
  • 服务企业建设网站如何下载网页上的视频
  • 网站哪家好中山网站专业制作
  • 网站信息内容建设自查报告推广管理
  • 邢台集团网站建设费用网站建设与维护好学吗
  • 网站demo 工具wordpress yum
  • 淘宝优惠券微网站开发王也道长微信头像
  • 企业网站快速备案服务网站建设工作标准
  • 视频网站开发代码wordpress熊掌号百度自动提交
  • 谈谈网站建设创新问题创建网站宝典
  • 深圳建设网站公司哪儿济南兴田德润有活动吗网站的缩略图
  • 手机网站源文件蛋糕方案网站建设
  • 高性能网站建设指南 京东网站建设的销售术语
  • 毕业设计h5网站制作高新网站设计找哪家
  • 非商业组织的网站风格自己做一个网站难么
  • 自助手机网站建站软件网站建设赚钱项目