承诺不使用string.replace

时间:2018-01-08 01:02:54

标签: javascript node.js promise

我正在尝试做一个非常简单的格式化程序,来替换我在函数中传递的字符串中的某些值。我想用星期几代替'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,因为我认为这与异步的东西有关。我现在看到了我的傻瓜错误!

0 个答案:

没有答案