js中 /[\r]/g 是什么意思?为什么是"[]"、"/"

我在看其他人写的代码时发现如图代码。不明白他是想把什么东西换成空。还有"[]"、"/" 代表的什么?

/[\r]/g在js中是正则表达式对象,在两个“/”之间的部分是表达式的主体,表示要匹配的字符串;“g”表示在整个字符串中搜索。所以这段代码中要匹配的字符串是“[\r]”所代表的字符串,其中“[]”表示字符的可选范围。

//g是全局匹配

//中间的内容表示:匹配以=开关,后面是0或多个空格,然后是双引号括起来的任意字符,比如:

= "any symble"

\s:匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。

\:将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。

匹配除 "\n" 之外的任何单个字符。要匹配包括 '\n' 在内的任何字符,请使用象 '[.\n]' 的模式。

扩展资料:

Javascript被归类为直译语言,因为主流的引擎都是每次运行时加载代码并解译。V8是将所有代码解译后再开始运行,其他引擎则是逐行解译(SpiderMonkey会将解译过的指令暂存,以提高性能,称为实时编译),但由于V8的核心部分多数用Javascript撰写(而SpiderMonkey是用C++),因此在不同的测试上,两者性能互有优劣。

与其相对应的是编译语言,例如C语言,以编译语言编写的程序在运行之前,必须经过编译,将代码编译为机器码,再加以运行。

参考资料来源:百度百科-javascript

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-05
/[\r]/g在js中是正则表达式对象,在两个“/”之间的部分是表达式的主体,表示要匹配的字符串;“g”表示在整个字符串中搜索。所以这段代码中要匹配的字符串是“[\r]”所代表的字符串,其中“[]”表示字符的可选范围,比如[0-9]表示一位范围在0-9之间的数字,至于\r和\n他们都是具有特殊意义的“保留字”,前者表示换行符,后者表示回车符。所以第二行的意思就是把json中的换行符和回车符全部替换成空字符串。其实这段代码可以稍微简化为json = json.replace(/\r|\n/g,"")
第2个回答  推荐于2017-09-02
/[\r]/g在js中是正则表达式对象,在两个“/”之间的部分是表达式的主体,表示要匹配的字符串;“g”表示在整个字符串中搜索。所以这段代码中要匹配的字符串是“[\r]”所代表的字符串,其中“[]”表示字符的可选范围,比如[0-9]表示一位范围在0-9之间的数字,至于\r和\n他们都是具有特殊意义的“保留字”,前者表示换行符,后者表示回车符。所以第二行的意思就是把json中的换行符和回车符全部替换成空字符串。其实这段代码可以稍微简化为json = json.replace(/\r|\n/g,"");本回答被提问者和网友采纳
第3个回答  2014-11-24
一行里面的换行符 g为一行,,没记错的话