关于javascript:Javascript-以指定的字符串格式化某字符串的占位符

6次阅读

共计 630 个字符,预计需要花费 2 分钟才能阅读完成。

目前为止 Javascript 进行字符串拼接只能以根本语法模式进行,而 .NET Framework 提供了许多种对字符串的简便操作方法,上面这个用于 Javascript 的办法相似于 .NET C# 中的 string.Format 办法,能够格式化数字占位符:

// 以指定的对象格式化某字符串的占位序号 [{0}, {1}, ... ]
function StringFormat(_str, _arg0, _arg1) {if (arguments.length > 1) {for (var i = 0; i < arguments.length - 1; i++) {var reg = new RegExp("\\{" + i + "\\}", "g");
            _str = _str.replace(reg, "##_" + i + "_##");
        }
        for (var i = 0; i < arguments.length - 1; i++) {var reg = new RegExp("##_" + i + "_##", "g");
            _str = _str.replace(reg, arguments[i + 1]);
        }
    }
    return _str;
}

比方 StringFormat(“Hello, {0}. My Name is {1}.”,”John”,”Henry”) 这种用法,当然参数不固定,能够容许有更多的或更少的占位符,程序的实现形式是以代换的办法进行,用到了正则表达式进行替换,应用的时候须要留神代换用的标识符,在这个程序中,如果字符串当中有“##_1_##”这一类的符号,那么当然会失去意料之外的后果。

正文完
 0