带有关键字参数的Javascript字符串
Javascript strings with keyword parameters
我很想念ruby on rails的一个简单特性:字符串关键字参数,像这样:
"the key '%{key}' has a value of '%{value}'" % {:key => 'abc', :value => 5}
在javascript中,你必须对许多字符串求和,这使得代码很难看,很难编写。
有好的图书馆吗?我对sprint之类的东西不感兴趣。
String.prototype.format = function(obj) {
return this.replace(/%'{([^}]+)'}/g,function(_,k){ return obj[k] });
};
"the key '%{key}' has a value of '%{value}'".format({ key:'abc', value:5 });
你可以创建一个基本的数组类型格式化器:
String.prototype.format = function(args) {
var str = this,
idxRx = new RegExp("{[0-9]+}", "g");
return str.replace(idxRx, function(item) {
var val = item.substring(1, item.length - 1),
intVal = parseInt(val, 10),
replace;
replace = args[intVal];
return replace;
});
};
用法:
'{1} {0} and {2}!'.format(["collaborate", "Stop", "listen"])
// => 'Stop collaborate and listen!'
相关文章:
- 可变大小的JavaScript字符串如何成为基元类型
- 如何将angularjs中的javascript字符串输出为循环数组
- 如何使用gump任务将html转换为javascript字符串
- 替换变量时,JavaScript字符串replace()不起作用
- 如何替换JavaScript字符串中除字母和数字之外的所有内容(空格/符号)
- 如何从django中的url解析javascript字符串
- 拆分javascript字符串以获得所需的值
- 使用Bootstrap'在Javascript字符串中的popover插件
- 如何替换javascript字符串中的前三个连字符
- 将JavaScript字符串转换为整数
- jquery/javascript字符串中的撇号
- 正在对java中的javascript字符串进行转义
- 如何在Javascript字符串中添加vaule
- Javascript:字符串中有效的基于数组的替换
- 具有负值的Javascript字符串.slice()
- javascript字符串替换$1(如果它是某个值)
- 将子函数的JavaScript字符串转换为实际函数
- JavaScript字符串中的换行符也保存为.txt
- 将Javascript字符串var传递给HTML href标记
- JavaScript 字符串字母和数字检查