有任何方法,如在jquery中替换mootools

zjm*_*126 2 javascript string jquery mootools substitution

这是mootools代码:

var myString = "{subject} is {property_1} and {property_2}.";
var myObject = {subject: 'Jack Bauer', property_1: 'our lord', property_2: 'savior'};
myString.substitute(myObject);
Run Code Online (Sandbox Code Playgroud)

并且jquery有这个方法吗?或者喜欢这种方法?

Jam*_*mes 11

不,但没有什么能阻止你自己添加它:

jQuery.substitute = function(str, sub) {
    return str.replace(/\{(.+?)\}/g, function($0, $1) {
        return $1 in sub ? sub[$1] : $0;
    });
};

// usage:
jQuery.substitute('{foo}', {foo:'123'});
Run Code Online (Sandbox Code Playgroud)