Javascript 返回子字符串方法中的错误字符
我是JS新手,我试过下面的代码Javascript 返回子字符串方法中的错误字符,javascript,string,substring,Javascript,String,Substring,我是JS新手,我试过下面的代码 var str = "\">2\"" var res = str.substring(2,1); var str = "\">2\"" var res = str.substring(2); 返回: 应为:2 我已经用下面的代码检查过了 var str = "\">2\"" var res = str.substring(2,1); var str = "\">2\"" var res = str.substring(2); 返回:
var str = "\">2\""
var res = str.substring(2,1);
var str = "\">2\""
var res = str.substring(2);
返回:
应为:2
我已经用下面的代码检查过了
var str = "\">2\""
var res = str.substring(2,1);
var str = "\">2\""
var res = str.substring(2);
返回:“2\”
应为:“2\”
如果我误解了什么,请告诉我,为什么它返回
而不是2
。在C#中,它工作正常
提前感谢事实上,在案例1中,您对它所做的操作是不正确的 当你这样做的时候
str.substring(2,1);
str.substring(2);
这实际上意味着
str.substring(1,2);
从
如果indexStart大于indexEnd,则substring()的效果就像两个参数被交换一样;例如,str.substring(1,0)==str.substring(0,1)
由于1,2处的字符是
,因此得到的结果相同
然而当你这样做的时候
str.substring(2,1);
str.substring(2);
实际上等于
str.substring(2, str.length-1);
如果省略indexEnd,substring()将提取字符到字符串末尾
javascript子字符串函数的工作方式如下 字符串。子字符串(开始、结束) 在这种情况下 如果“开始”大于“结束”,它将交换两个参数: 所以答案只会 在第二种情况下
var str = "\">2\""
var res = str.substring(2);
从位置2开始提取,然后提取字符串的其余部分:
所以答案将2“
此链接将帮助您了解更多信息子字符串(2,1)仅提供第二个位置的字符,
其中as子字符串(2)从第二个位置返回字符串,直到字符串结束。或者使用
substr
。