Actually,simplicity is not simple

现实JS模板,可设置默认值

在写封装一些URL请求时想到用模板的方式会很灵活,所以在网上看了下,把replace的第二个参数写成函数时还真有意思,省了写循环的事,呵呵!也实现了我认为必需得有的特性:设置默认值

[javascript]
var urlList = {
    type: {
        a:'http://nootn.com/blog/?id={key}&name={name:asins}&notn={notn:js}',
        //这里还有很多这样的URL
    },
    url: function(T, O){
        var reg = new RegExp('\{([^}]+?)\}', 'g');
        var url = this.type[T].replace(reg, function(v,key){
            var arr = key.split(':');
            return encodeURIComponent( (O[arr[0]] != undefined ? O[arr[0]] : arr[1])||'' );
        });
        return url;
    }
    //这里还有其它函数
}

使用时就很方便了,

urlList.url('a', {key:'keyName', name:'nootn'});
//这样生成的URL就是http://nootn.com/blog/?id=keyName&name=nootn&notn=js

日志信息 »

该日志于2010-03-15 11:49由 asins 发表在Develop分类下, 你可以发表评论。除了可以将这个日志以保留源地址及作者的情况下引用到你的网站或博客,还可以通过评论 RSS订阅这个日志的所有评论。

相关日志 »

发表评论 »

captcha
请输入验证码