有人可以解释一下这里发生了什么吗?我看到%d
和%s
,但是在代码的其他任何地方都看不到这些声明或编写的内容。这到底是什么意思/在javascript中做什么?我假设这是一种我从未见过的字符串模板?
passport.deserializeUser(
(id, done) => {
debug('will deserialize user.id=%d', id)
User.findById(id)
.then(user => {
debug('deserialize did ok user.id=%d', user.id)
done(null, user)
})
.catch(err => {
debug('deserialize did fail err=%s', err)
done(err)
})
}
)
最佳答案
您会看到console.log()
或console.debug()
内置了字符串替换模式。
模式如下所示:
字符串的%s
号码的%d
或%i
浮点数的%f
对象的%o
JSON的%j
因此,基本上,您是用提供的值替换说明符,如下所示:
var name = 'Chris';
console.log('Hi, my name is %s.', name);
// Hi, my name is Chris.
console.debug('Hi, my name is %s.', name);
// Hi, my name is Chris.
文件:
关于javascript - Javascript:%s或%d代表字符串?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42406146/