js 过滤所有空字符串

str = str.replace(/ /g,'')
请问这句过滤空字符窜的代码 / /g表达什么意思

首先要理解这个方法replace。

语法:string.replace(searchvalue,newvalue)

searchvalue:必须。规定子字符串或要替换的模式的 RegExp 对象。
请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。    

newvalue:必需。一个字符串值。规定了替换文本或生成替换文本的函数。    

注意RegExp 对象,而// 就是一个RegExp 对象(正则表达式)。

// var RegExp = new RegExp(pattern, attributes);
var reg = new RegExp(' ', 'g');
str = str.replace(reg,''); // 跟str = str.replace(/ /g,'') 是一样意思。

而这里的g是global的缩写,意思是全局匹配;

如果没有加g,那么只是匹配第一个就结束了,对应str2,否则就全局匹配,对应str1

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-21
g是正则表达式全局搜索的意思
相似回答