我正在尝试做一个非常简单的格式化程序,来替换我在函数中传递的字符串中的某些值。我想用星期几代替'DD'。但是当我这样做时,我得到的回报是我作为变量传递的字符串。 所以我的问题是我真的不知道为什么当我执行今天()的控制台日志时,我得到相同的字符串:
today().then(data => console.log(data))
我输入的字符串相同,“ DD,dd de MM de YY。”
const today = () => Promise.resolve(
getDate("DD, dd de MM de YY.").then(data => data)
)
以下是应该返回我修改过的文本的代码:
const getDate = (text) => {
return new Promise( (resolve, reject) => {
let date = new Date()
text.replace('DD', translateWeekDay[date.getDay()])
text.replace('dd', date.getDate().toString())
text.replace('MM', translateMonth[date.getMonth()])
text.replace('YY', date.getFullYear().toString())
resolve(text)
})
.catch(err => console.log(err))
}
事情是我已经使用了许多承诺,所以我正在构建这样的一切。我错过了必不可少的东西吗?
修改 我使用了promises,因为我认为这与异步的东西有关。我现在看到了我的傻瓜错误!