var text = "cat, bat, sat";
result = text.replace(/(.at)/g, "word ($1)"); //"word (cat), word (bat), word (sat)"
obj = {123:"AAAA"};
'{123}'.replace(/(\d{3})/, obj['$1'] ); //"{undefined}"
'{123}'.replace(/(\d{3})/, obj[+'$1'] ); //也是"{undefined}"
上面的代码,为什么第一块的代码能替换出来,第二块的代码替换出来就是undefined呢?要实现这种功能要怎么做?之前是用了2个表达式实现的,直接用replace能实现吗?
使用函数替换~~