在函数中,传递的参数中有“\”字符,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\ 这样的字符串是打印不出来的
js函数传递参数时,如果是路径类型的参数,里边包含:'\'字符报错
原文地址:https://www.cnblogs.com/kdiekdio/p/12175270.html
时间: 2024-11-08 08:08:36