牛叔叔 的笔记

好好学习

2022-04-28 10:22

给JavaScript字符串String加个格式化方法

牛叔叔

WEB前端

(571)

(0)

收藏

JavaScript中没有为String提供类似于Java或其他语言的format方法,有时候需要拼接字符串时就会代码很乱。可以自己设计一个方法,添加到String的prototype上,这样就可以直接使用了。

代码:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>万码学堂</title>
    <script>
        String.prototype.format = function(args) {
        var result = this;
        if (arguments.length > 0) {
            if (arguments.length == 1 && typeof (args) == "object") {
                for (var key in args) {
                    if(args[key]!=undefined){
                        var reg = new RegExp("({" + key + "})", "g");
                        result = result.replace(reg, args[key]);
                    }
                }
            }
            else {
                for (var i = 0; i < arguments.length; i++) {
                    if (arguments[i] != undefined) {
                        var reg= new RegExp("({)" + i + "(})", "g");
                        result = result.replace(reg, arguments[i]);
                    }
                }
            }
        }
        return result;
    }
    console.log("你好{0},我是{1}!".format('万码','小码哥'))
    console.log("你好{name},我是{myname}!".format({name:'万码',myname:'小码哥'}))
    </script>
</head>
<body>
    <h1>字符串格式化测试</h1>
</body>
</html>

运行结果:

微信图片_20220428102143.png

0条评论

点击登录参与评论