javascript如何将变量添加到字符串 [英] javascript how to add a variable to a string

查看:236
本文介绍了javascript如何将变量添加到字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用javascript和jquery,我有一个类似

I'm using javascript and jquery, I have a string like

  var apiUrlAnswer = 'https://api.stackexchange.com/2.0/answers/{ids}?order=desc&sort=activity&site=stackoverflow';

我需要用一个变量替换{ids}.

I need replace the {ids} with a variable.

在C#中可以使用称为

String.Format(https://api.stackexchange.com/2.0/answers/{0}?order=desc&sort=activity&site=stackoverflow, myVariable);

我想知道Javascript中是否存在类似的东西,因此可以避免简单的字符串连接.

I would like to know if exist something similar in Javascript so I can avoid simple string concatenation.

感谢您的帮助!

推荐答案

这是String.format(例如c#);我已经扩展了javascripts String对象,以包括这样的格式方法:

Well here's a String.format (like c#); I've extended javascripts String object to include a format method like this:

String.format = function(stringToFormat, argsForFormat) {

    for (var i = 0; i < argsForFormat.length; i++) {
        var regex = new RegExp('\{(' + i + ')}', 'g');
        stringToFormat = stringToFormat.replace(regex, argsForFormat[i]);
    }

    return stringToFormat;    
};

您可以这样称呼

var args = [1, 'activity', 'stackoverflow', 'desc']   
var apiUrlAnswer = 'https://api.stackexchange.com/2.0/answers/{0}?order={3}&sort={1}&site={2}';
var apiUrlAnswer = String.format(apiUrlAnswer, args);

或者内联版本看起来像这样

Or an inline version would look like this

var apiUrlAnswer = String.format('https://api.stackexchange.com/2.0/answers/{0}?order={3}&sort={1}&site={2}', [1, 'activity', 'stackoverflow', 'desc']);

和另一个例子

String.format("http://{0}.{1}.com", ['www', 'stackoverflow']);

这篇关于javascript如何将变量添加到字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆