为了简化我的问题,假设我有以下脚本:
var sPath = "/page/script/";
if (sPath.length != sPath.lastIndexOf("/"))
sPath = sPath + '/';
// do something else
为什么它没有进入条件条件?为什么是差异值?
最佳答案
因为sPath.length
是13
,但是它的最后一个字符是字符串(并且lastIndexOf('/')
)是12th
,因为Javascript矢量从0
到n
。
例如,字符串“ ABC”的长度为3
,但其位置为0
,1
和2
。
但是,这应该起作用:
var sPath = "/page/script/";
if ((sPath.length-1) != sPath.lastIndexOf("/"))
sPath = sPath + '/';
JSFiddle示例:http://jsfiddle.net/zGyAa/
关于javascript - Javascript string.length和string.lastIndexOf差异值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11092314/