首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python的JavaScript ()函数的等价物?

Python的JavaScript ()函数的等价物?
EN

Stack Overflow用户
提问于 2011-02-12 05:26:39
回答 15查看 36.5K关注 0票数 63

Python有一个漂亮的函数来实现这一点:

代码语言:javascript
复制
bar1 = 'foobar'
bar2 = 'jumped'
bar3 = 'dog'

foo = 'The lazy ' + bar3 + ' ' + bar2 ' over the ' + bar1
# The lazy dog jumped over the foobar

如下所示:

代码语言:javascript
复制
bar1 = 'foobar'
bar2 = 'jumped'
bar3 = 'dog'

foo = 'The lazy {} {} over the {}'.format(bar3, bar2, bar1)
# The lazy dog jumped over the foobar

JavaScript有这样的功能吗?如果不是,我该如何创建一个与Python的实现语法相同的代码呢?

EN

回答 15

Stack Overflow用户

回答已采纳

发布于 2011-02-12 06:25:08

另一种方法是使用String.prototype.replace方法,将"replacer“函数作为第二个参数:

代码语言:javascript
复制
String.prototype.format = function () {
  var i = 0, args = arguments;
  return this.replace(/{}/g, function () {
    return typeof args[i] != 'undefined' ? args[i++] : '';
  });
};

var bar1 = 'foobar',
    bar2 = 'jumped',
    bar3 = 'dog';

'The lazy {} {} over the {}'.format(bar3, bar2, bar1);
// "The lazy dog jumped over the foobar"
票数 62
EN

Stack Overflow用户

发布于 2015-07-06 22:38:36

有一种方法,但不是完全使用格式。

代码语言:javascript
复制
var name = "John";
var age = 19;
var message = `My name is ${name} and I am ${age} years old`;
console.log(message);

jsfiddle - link

票数 45
EN

Stack Overflow用户

发布于 2013-11-23 20:37:10

在寻找相同问题的答案时,我只找到了这个:https://github.com/davidchambers/string-format,这是“受Python的str.format()启发的JavaScript字符串格式化”。它看起来和python的format()函数很像。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4974238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档