首页 > 其他分享 >JS实现String.Format

JS实现String.Format

时间:2024-09-30 10:00:56浏览次数:8  
标签:const String Format 占位 str 字符串 JS match

js 实现 string.format 功能

<script type="text/javascript">
    var errorHtml = "<a title=\"{1}\" href=\"#\" onclick=\"\" class=\"ml-5\" style=\"text-decoration: none; color: #FF3C3C\"><i class=\"Hui-iconfont\">&#xe6dd;</i> {0}</a>";


    $(function () {
        $("#spanHisApiStatus").html(errorHtml.Format("运行异常","点击重试"));
    });

    // 将 Format 方法添加到字符串的原型上, 让所有的字符串都能调用这个方法
    String.prototype.Format = function(...arg){
        let str = this; // this的值是当前调用Format 方法的字符串内容
        const regArr = str.match(/{\d+}/g);  // 正则获取到字符串里面的占位符
        // 将得到的占位符数组进行排序 从低到高
        regArr.sort((a, b) => {
            // {0} => 0  匹配占位符的数字
            const regA = a.match(/\d+/g)[0];
            const regB = b.match(/\d+/g)[0];
            return regA - regB;
        });
        // 遍历得到的占位符数组,并将字符串中 对应的占位符给替换掉
        regArr.map((row)=>{
            const regIndex = row.match(/\d+/g)[0];
            arg[regIndex] &&( str = str.replaceAll(row, arg[regIndex]));
        })
        // 将格式化之后的内容返回
        return str;
    };
</script>

标签:const,String,Format,占位,str,字符串,JS,match
From: https://www.cnblogs.com/vipsoft/p/18441270

相关文章

  • 高点摄像山火烟雾检测数据集 共2890张图像,分辨率1920×1080,标注采用json格式,标注了每
    高点摄像山火烟雾检测数据集(并按照低、中详细标注烟雾浓度)。主要针对初期山火,任何野火检测系统的最重要目标是在火势扩大之前及时检测到火灾。在初期阶段,野火由非火焰性的燃烧烟雾组成,热量相对较低。在这个阶段识别火灾能够提供最佳的抑制机会。在这个阶段通常看不到火焰;因此,任......
  • C++ string的基本运用详细解剖
    string的基本操作一.与C语言中字符串的区别二.标准库中的string三.string中常用接口的介绍1.string中常用的构造函数2.string类对象的容量操作函数3.string类对象的访问及遍历操作4.string类对象的修改操作5.string类的非成员函数6.string中的其他一些操作一.与C语言......
  • 【Java】—— 常用类和基础API:JDK8之前日期时间API的使用:Date、SimpleDateFormat、Cal
    目录3.JDK8之前:日期时间API3.1java.lang.System类的方法3.2java.util.Date3.3java.text.SimpleDateFormat3.4java.util.Calendar(日历)练习3.JDK8之前:日期时间API3.1java.lang.System类的方法System类提供的publicstaticlongcurrentTimeMillis():用来返......
  • nodejs学习
    nodejs中的v8引擎模块一、promise钩子模块;二、垃圾回收模块;1、promise钩子包括:(1)onInit(callback)在promise创建时调用;(2)onSettled(callback)在fulfilled或rejected时调用;(3)onBefore(callback)在promise继续执行之前调用的回调;(4)onAfter(callback)在promise继续执行之后调......
  • jsp爱宠宠物医院管理系统设计与实现0685i--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、课题名称爱宠宠物医院管理系统设计与实现二、研究背景与意义随着宠物市场的不断扩大,宠物医院作为宠物健康保障的重要环节,其管理效率和服务质......
  • jsp爱独居老人网站的设计与实现rig5u--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、项目背景随着社会老龄化的加剧,独居老人群体日益庞大,他们面临着生活孤独、健康监测不足、紧急求助困难等问题。为了改善独居老人的生活质量,提升......
  • jsp爱电影网站的设计与实现6nk0x(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、研究背景与意义随着互联网技术的飞速发展,网络娱乐已成为人们日常生活中不可或缺的一部分,其中在线观影因其便捷性、丰富性和互动性而备受青睐。......
  • Jsoncpp
    欢迎访问我的另一个博客:https://xingzhu.top/Json概述:https://xingzhu.top/archives/json-gai-shuC++中原生不支持Json,所以需要导入Jsoncpp库准备环境下载Jsoncpp从github上下载源码#这是链接地址https://github.com/open-source-parsers/jsoncpp这里我使......
  • Json 概述
    C++版的Json使用:https://xingzhu.top/archives/jsoncpp概述是一个完全独立于编程语言的文本格式,用来存储和表示数据的Json是一种数据格式,和语言无关,在什么语言中都可以使用Json用途:组织数据(数据序列化),用于数据的网络传输组织数据(数据序列化),写磁盘文件实现数据的......
  • vue中使用decimal.js对前端数值类型进行高精度计算
    需求背景:由于一些场景我们需要在前端JavaScript进行数值计算,且对精度要求比较严谨,而前端数值是浮点类型,直接使用计算可能会产生一系列的精度问题,常见的浮点运算问题,比如精度损失等;所以例如涉及到一些金额计算等,需要进行高精度处理。解决方案:(1)可以把数值计算部分逻辑交给后端接口......