第一种方法 replace结合正则(适用于特殊字符出现在任意位置) 这里特殊字符以我的需求中文的"、"表示
replace配合正则替换
str.replace(regexp|substr, newSubStr|function)
replace第一个参数就是正则 该正则所匹配的内容会被第二个参数的返回值替换掉
举例子
let a="dasfaffd、fdsa、、"
a.replace(/、/g,"")
这里的特殊字符就被第二个参数""给替换了等于过滤效果
第二种方法 只去掉末尾的特殊字符 这里我采用的是for循环加charAt加slice 字符串方法:charAt slice
charAt 方法可返回指定位置的字符。
slice
一个新的字符串。包括字符串 stringObject 从 start 开始(包括 start)到 end 结束(不包括 end)为止的所有字符。
start:
截取片段的起始位置。如果是负数,则该参数规定的是从字符串的尾部开始算起的位置,也就是说,-1指最后一个位置,-2指倒数第二个位置,以此类推
end:
要抽取片段的结束位置,若未指定,则要提取的字串,包括start到原字符串结尾的字符串。如果该参数是负数,那么它规定的是从字符串末尾开始算起始位置。
因为是判断最后一个字符串有没有特殊字符,所以需要定义一个变量i让它等于字符串的length-1 for循环i 如果字符串.charAt(i)=="、";i--
结合slice方法 因为slice返回的是一个新数组所以需要 这个字符串=字符串.slice(0,i)
同理用while循环也可以