javascript unicode 解码,unicode 码转为汉字

1.主要想问这段代码中 $2的作用

2.代码说明,这是一段代码的作用是将 unicode 编码转为汉字

代码如下


`var param = '测试商品A-    型号AAA'

function reconvert(str){

    str = str.replace(/(&#)(\d{1,6});/gi,function($0){

        return    String.fromCharCode(parseInt(escape($0).replace(/(%26%23)(\d{1,6})(%3B)/g,"$2")));

    });

    return str;

}


reconvert(param)`

3.问题
目前了解的知识点 
a.replace可以通过正则表达式来进行替换
b.escape 能进行转码 这里是将 “”替换为了 “%26%23”
c."$"在 replace 中有特殊的含义,表示第几个参数。

为什么这里需要使用‘$2’,而不是 ‘$1,$3...’

谢谢你的回答!


桃花长相依
浏览 875回答 1
1回答

猛跑小猪

javascript正则表达式是支持分组捕获的,分组的结果会存储静态属性$1-$9中其中在你的表达式中,要替换的内容在替换为第二个分组中捕获的内容
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript