1
我想对字符串执行变量替换(我已经排除了模板字面量,因为字符串必须稍后进行存储和计算)。javascript - 替换为字符串模板,但是捕获缺失的变量
小胡子或类似的东西看起来像是一个竞争者,但我想知道替代是否不完整。在这种情况下,它的产生URL,因此,缺少零件的意思是无效的网址:
测试了这一点,在节点:
var Mustache = require('mustache');
var result = Mustache.render("/someurl/{{path1}}/{{path2}}/", {path1:"my-path-to-1"})
console.log(`result:${result}:`)
这种情况没有问题,但由此产生的URL是无用的,因为胡子悄悄更换了缺少path2与一个空字符串。我想看到的是一个例外被抛出(最好)或失败,一个简单的方法来认识到并非一切都被取代。
注意:模板字符串是任意的,替换对象的内容也是任意的。
输出:
result:/someurl/my-path-to-1//:
这是我找了Python相当于:
res = "/someurl/%(path1)s/%(path2)s/" % {"path1":"my-path-to-1"}
输出:
KeyError: 'path2'