zoukankan      html  css  js  c++  java
  • 自己改写的String.Format方法

    String.Format = function(str) {
                var reg;
                var args;
                //自定义一个undifined,增快速度
                var undifined;
                if (arguments[1] && typeof (arguments[1]) == "object") {
                    reg = new RegExp("\\{([^\\d]\\w*)\\}", "g");
                    args = arguments[1];
                }
                else {
                    reg = new RegExp("\\{(\\d+)\\}","g");
                    //将arguments转换成数组然后赋值给args
                    args = Array.prototype.slice.call(arguments);
                    for(var i=0;i<args.length-1;i++)
                    {
                        args[i]=args[i+1];
                    }
                    //将args的第一个值移除,因为第一个值是需要被正则匹配的字符串
                    args[i]=undifined;
                }
            
                return str.replace(reg, function() {                 
                    var val = args[arguments[1]];
                    return val == undifined ? arguments[0] : val;
                });
            };     
            alert(String.Format("{0},{1},{2}","aa","bb"))
            alert(String.Format("{aa},{bb}",{aa:123,bb:456}))
  • 相关阅读:
    websocket在线测试工具
    短信线上发送错误,线下成功
    nginx添加stream模块1.20
    sort 的使用
    实验、进程的同步与互斥——生产者消费者
    实验、可变分区存储管理系统模拟 —— 最先适应分配算法
    test
    c++的大数阶乘算法
    C#解析JSON字符串总结
    C++ 查看单个类对象模型利用Vs开发者命令提示工具
  • 原文地址:https://www.cnblogs.com/mxw09/p/1878798.html
Copyright © 2011-2022 走看看