`
modabobo
  • 浏览: 511360 次
文章分类
社区版块
存档分类
最新评论

在javascript中模拟string.Format格式化字符串组合

 
阅读更多

软件开发过程中,字符串组合是经常的是情,我们先看一句常用的字符串组合:

var strName='张三';

var strTableName='myTable';

var strSql="select * from "+strTableName+" where name='"+strName+"'";

显然,这句话的目的是要得到:

select * from myTable where name='张三'

我们再来看C#中的常用用法:

string strName="张三";

string strTableName="myTable";

string strSql=string.Format("select * from {0} where name='{1}'",

strTableName,strName);

显然,第二种方式直观的多,我们可以利用JS可以不限制函数参数的办法来模拟,为此,写一个函数,无须定义参数,实际使用时却可以传入参数:

function Format()
{
var nLength = arguments.length;
if (nLength == 0)
return '';
var strResult = arguments[0];
for (var i = 1; i < nLength; i++)
{
strResult = strResult.replace('{' + (i - 1) + '}', arguments[i]);
}
return strResult;
};

按如下的方法使用:

strSql=Format("select * from {0} where name='{1}'",

strTableName,strName);

是不是和C#差不多?

现学现卖,用正则表达式,两句话就够了:

String.Format = function()
{
var a = [].slice.apply(arguments), s = a.shift();
return s.replace(//{/d+/}/g, function(d) { return a[d.slice(1, -1)]; });

};

分享到:
评论

相关推荐

    javascript.string.format:java的String.format()的Javascript实现;

    java 的 String.format() 的 Javascript 实现,增加了支持格式化百分比和后缀-SI,如 120M、30K。 将 Formatter.format() 移植到 javascript 的基本开始。 目前依赖 .toLocaleString() 进行命名日期格式。 请参阅...

    JavaScript实现格式化字符串函数String.format

    本文主要介绍了JavaScript实现格式化字符串函数String.format(可自动解析引号转义字符)。具有很好的参考价值,需要的朋友一起来看下吧

    javascript模拟C#格式化字符串

    JS 模拟C# 字符串格式化操作 /*** ** 功能: 字符串格式化替换操作 ***/ String.prototype.format = function () { var args = arguments; return this.replace(/\{(\d+)\}/g, function (m, i) { return args[i...

    javascript模拟实现C# String.format函数功能代码

    C# string.format这个功能用到的地方比较多, 所以就用js实现了一个简单的版本 : 代码如下:String.format = function () { var formatStr = arguments[0];  if ( typeof formatStr === ‘string’ ) { var ...

    如何使用JS在HTML中自定义字符串格式化

     在JavaScript中虽没有类似的方法,但我们可以利用字符串的replace方法自定义字符串的格式化方法: [removed] $(function () { /*自定义字符串格式化*/ String.prototype.Format = function (args) { /*this...

    es6ish-string-format:与ES6样式模板字符串兼容的ES5 JavaScript字符串格式化程序

    一个JavaScript字符串格式化程序,主要与兼容。 安装 在浏览器中: &lt; script src =" format.js " &gt; &lt;/ script &gt; 通过: bower install es6ish-string-format 笔记 此方法将自身附加到String原型。 ...

    string-utils:一些基本的字符串实用程序

    字符串工具概要包含一些用于格式化和操作字符串的基本实用程序: StringUtils.format 的工作方式类似于 .Net 中的 String.Format。代码示例 s1 = StringUtils.format("The {0} is against the {1}.", "chair", "wall...

    .format:[OBSOLETE]高级字符串格式

    一个小型JavaScript库,用于格式化字符串。 它的灵感来自于Python的str.format()并str.format()为模型。 在字符串上调用format ,字符串中的占位符将替换为由提供的参数确定的值。 占位符是一系列字符,以{开头,...

    string-kit:字符串处理工具箱

    弦乐器套件 字符串处理工具箱,具有字符串格式化... 基本上,如果formatString包括的格式说明(以%开始的子序列),按照附加参数formatString被格式化并将得到的字符串替换它们各自的说明符中插入。 而且它在很多地

    JavaScript 格式字符串的应用

    在使用JavaScript中的Date对象时,有一个常用的操作就是输出。但Date对象自带的toString()方法输出的格式并不能满足用户...我在想,是不是可以将C#中DateTime.ToString(string format)方法的形式引入到JavaScript中呢?

    JavaScript自定义日期格式化函数详细解析

    因为我们知道,Date 类只提供了若干获取日期元素的方法,如 getDate(),getMinute()……却没有一个转换为特定字符串的格式化方法。故所以,利用这些细微的方法,加以封装,组合我们想要的日期字符串形式。一般来说,...

    format-to-json:Format string to a json like template. The main algorithm of ZJSON.NET 把字符串格式化成json格式,转杰森工具的核心算法

    将字符串格式化为json之类的模板 用法 在HTML中 &lt; script src =" https://unpkg.com/format-to-json@2.1.2/fmt2json.min.js " &gt; &lt;/ script &gt; &lt; script &gt; const source = `{"zjson":"ZJSON",...

    JavaScript对象验证库js-validator.zip

    between:min,max验证域的值必须在min和max之间,验证域可以是数字或者字符串。boolean验证域的值可以看作是布尔值,可以是true,false,1,0,"1","0",'1' and '0'。date验证域必须为日期字符串形式,可以被Date....

    word-replace:JavaScript等效于Python的String对象上的format方法

    Pyhton在字符串对象上有一个格式化方法,在处理字符串时非常方便。 JavaScript没有这种方法。 如果我们必须处理任何字符串操作,我们都有丑陋的方法-隐含。 word-replace.js的灵感来自于Python在字符串对象上的...

    freemarker总结

    有一种特殊的字符串称为raw字符串,被认为是纯文本,其中的\和{等不具有特殊含义,该类字符串在引号前面加r,下面是一个例子: ${r"/${data}"year""}屏幕输出结果为:/${data}"year" 转义 含义 ...

    distinguished-format-strings:不推荐使用。 该想法已被过时的描述数据所取代(请参阅链接)

    (可能)允许从格式化的呼叫生成自动合同呼叫 JSON-RPC方法 eth_signFormattedString(地址,[formatString,...],paramTypes,paramValues) UI应该显示人类可读的字符串以及地址(应该执行反向ENS查找) 如果...

    fecha-th

    format接受Date对象(或时间戳记)和字符串格式,并返回格式化的字符串。 请参阅下面的可用格式标记。 注意:当传递无效参数时, format将引发错误 import { format } from 'fecha' ; type format = ( date : Date ...

    kitten-format:浏览器的快速格式化程序

    小猫格式浏览器的快速货币,数字和字符串格式化程序。入门npm install kitten-format 安装有两个版本可用: 默认版本: kittenFormat.client.js 压缩版本: kittenFormat.client.min.js 语言环境不随构建一起提供。 ...

    phormatter:电话号码格式化程序(Node.js模块)

    电话号码格式化程序(Node.js模块) 描述 这个Node.JS模块是从php库( )移植而来的,它以清晰易读的字符串格式设置电话号码,具体取决于国家/地区代码和电话号码的长度。 安装 $ npm install phormatter 使用 模块...

Global site tag (gtag.js) - Google Analytics