最近看了一道题:
JS编码实现一个render方法,使得可议这样调用:
const year = ‘2017’;
const month = ‘09’;
const day = ‘21’;
const str = render(‘year−year−{month}-${day}’)({year,month,day});
console.log(str)//输出2017-09-21
我简单的实现了一下:
render (str) {
return function (obj) {
str = str.replace('year', obj.year)
str = str.replace('(month)', obj.month)
str = str.replace('$(day)', obj.day)
return str
}
},
tranform () {
const year = '2018'
const month = '9'
const day = '21'
const str = this.render('year-(month)-$(day)')({ year, month, day })
console.log(str)
},