js函数传递参数时,如果是路径类型的参数,里边包含:'\'字符报错

在函数中,传递的参数中有“\”字符,js会将它默认为转义字符串,如果没有出现与他匹配的转义字符串,就会缺失,例如:

将这样的一个字符串作为一个参数:C:\Program Files (x86)\MySQL\MySQL Server 5.7\data\

传递到函数里边的值就会被默认转化为:C:Program Files (x86)MySQLMySQL Server 5.7data

如果要实现这个参数的精确传递,就需要将字符串进行处理,一般会有两种方式:

  ①:将字符串里边的 ‘\’ 字符替换成 ‘/’ 这样就不会被转义

  ②:将字符串里边的 '\' 字符替换成 '\\' 字符,这样也是可以的   values = value.split('\\').join('\\\\')

 

这里还有一个坑: 就是后端返回的字符串为:C:\Program Files (x86)\MySQL\MySQL Server 5.7\data\ 使用console.log能够正常打印出来;但是,自己定义一个字符串,赋值为:C:\Program Files (x86)\MySQL\MySQL Server 5.7\data\   这样的字符串是打印不出来的

posted on 2020-01-10 11:49  麻烦ing  阅读(3178)  评论(0编辑  收藏  举报

导航