javascript - 插值函数需要

标签 javascript jquery

我需要一个可以像原型(prototype) js 框架那样进行插值的 javascript 函数。有人有不依赖于原型(prototype)的插值函数吗?欢迎使用 Jquery。谢谢。

最佳答案

根据您的需要,这样的事情可能会奏效:

String.prototype.interpolate = function(valueMap){
  return this.replace(/\{([^}]+)\}/g, function(dummy, v){
    return valueMap[v];
  });
};

用法:

var params = {
  "speed":"slow",
  "color":"purple",
  "animal":"frog"
};
var template = "The {speed} {color} fox jumps over the lazy {animal}.";
alert(template.interpolate(params));

//alerts:
//"The slow purple fox jumps over the lazy frog."

这将为字符串中用大括号包裹的 {named} 项提供基本插值。

注意:这是一个基本实现,不应在字符串或参数不安全的情况下使用(例如,如果您要构建 SQL 语句或其他内容)

关于javascript - 插值函数需要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5357121/

相关文章:

javascript - 如何将文件下载到 Node.js 中的缓冲区中?

jquery 全局化与 parseFloat 验证的问题

javascript - jQuery 选择器 - 样式值

javascript - 在一个隐藏文本输入中收集多个输入

javascript - 取消选中 radio 场

javascript - 在 firebase (javascript) 中,如何获取当前登录用户的数据?

javascript - 具有多个参数的 jQuery data()?

JavaScript 原型(prototype)属性 : Prototype based Inheritance

javascript - 单击后禁用按钮单击并在 10 秒后使用 jquery 或 javascript 在 asp.net web 表单中重新启用

javascript - 动态创建和应用 CSS3 动画