我在js中写了一个函数来删除第一个空格和结束空格和特定字符:

复制代码代码如下所示:

功能装饰(STR,charlist){

返回str.replace(new RegExp(' ^ { + + + | charlist } { + + + $ } charlist ','克'),' ');

}



代码中没有问题,运行中没有错误。

直到今天,当我搜索Note3在搜索栏中,我发现搜索栏的内容成为了ote3,而其他字母或数字是正常的。搜索栏的内容是什么

调试完代码后,将代码更改为:

复制代码代码如下所示:

功能装饰(STR,charlist){

VaR charlist = charlist | | ;

返回str.replace(new RegExp(' ^ { + + + | charlist } { + + + $ } charlist ','克'),' ');

}



charlist的初始化是添加的功能。在Note3搜索,得到的结果是正确的。

虽然js是一种弱类型语言,但是变量的使用不需要初始化,代码在运行时自动转换和赋值,但是这会导致一些意想不到的问题,所以有必要初始化所有使用的变量。

我今天在这里,希望大家能喜欢它。