javascript - js format函数出错
阿神
阿神 2017-04-11 09:48:46
0
3
632
var template1="我是{0},今年{1}了"; 
var template2="我是{name},今年{age}了"; 
var result1=template1.format("loogn",22); 
var result2=template1.format({name:"loogn",age:22}); 

阿神
阿神

闭关修行中......

全部回复(3)
PHPzhong

这个需要你定义这个函数才能调用.顺便贴一下我代码:

<script type="text/javascript">
    String.prototype.format = function() {
        var resultStr = this.toString();
        // 参数为对象
        if(typeof arguments[0] === "object") {
            for(var i in arguments[0]) {
                resultStr = resultStr.replace("{" + i + "}", arguments[0][i]);
            }
        }
        // 多个参数
        else {
            for(var i = 0; i < arguments.length; i ++) {
                resultStr = resultStr.replace("{" + i + "}", arguments[i]);    
            }
        }
        return resultStr;
    };
    var template1 = "我是{0},今年{1}了"; 
    var template2 = "我是{name},今年{age}了"; 
    var result1 = template1.format("loogn",22);
    var result2 = template2.format({name:"loogn",age:22}); 
    console.log("result1: " + result1);
    console.log("result2: " + result2);
</script>

结果图:

大家讲道理

js string类型没有format这个方法的啊

黄舟

format函数本来就未定义,直接调用当然报错了.
楼主应该是直接搜索到了别人的代码,但是没仔细看,鉴定完毕。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板