我使用下面的代码:我可以在JavaScript中链接一个子字符串检查吗?
if (store.getItem('TopicID') != "00")
TopidID永远是4个位数,我需要做的就是改变这种检查的最后两位数字是“00”。
我可以通过只添加“.substring(from,to)”来做到这一点吗?或者我需要把它放入一个变量,然后检查变量吗?
我使用下面的代码:我可以在JavaScript中链接一个子字符串检查吗?
if (store.getItem('TopicID') != "00")
TopidID永远是4个位数,我需要做的就是改变这种检查的最后两位数字是“00”。
我可以通过只添加“.substring(from,to)”来做到这一点吗?或者我需要把它放入一个变量,然后检查变量吗?
我能做到这一点作为上述的部分只需添加 “.substring(从,到)”
是的,你可以。不过,你的语法错了。
if (store.getItem('TopicID').substring(2) != "00")
使用if (!/00$/.test(store.getItem('TopicID'))
来检查最后2位数字不是'00'。这样store.getItem('TopicID')
的值的长度并不重要,你总是检查值的最后两个字符,并且你不需要substring
“链接”。
顺便说一句,我认为store.getItem('TopicID')
在这里返回String
。
为了完整并响应Paul Phillips评论:在!/00$/.test([somestring])
,/00$/
是Regular Expression,一个用于描述搜索模式的特殊文本字符串。在这种情况下,这意味着:对于从store.getItem('TopicID')
得到的字符串,检查是否可以找到2个连续的零,其中$
-表示'在字符串末尾检查该模式'。
在“链接”这个主题上更加完整:只要链接的对象包含一个方法,所有东西都可以链接在一起。这方面的一个完全荒谬的例子:
Number(/00$/.test('0231')) //convert a boolean to a Number
.toFixed(2) //a Number has the toFixed method
.split('.')[1] //toFixed returns a String, which has method split
.substr(1) //the second element is a string, so substr applies
.concat(' world') //still a string, so concat will do
.split(' ') //string, so split works
.join(' hello ') //from split an array emerged, so join applies
;
//=> result of this chain: '0 hello world'
链接它会工作。所以会提取一个局部变量。所以不,你不需要来。如果你认为它使代码更具可读性,那就去做吧。
你可以做到使用slice
太
if (store.getItem('TopicID').slice(2,4) != "00") {
// Do Your Stuff
}
如果是四位数字,你可以使用
if (store.getItem('TopicID') % 100)
var yourString = (store.getItem('TopicID'))
if(yourString.substring((yourString.length - 2), 2) == "00")
上面的代码不关心你的字符串有多长。它得到最后两位数并与“00”相比较
'TopicID'总是4位数字或'store.getItem('TopicID')'返回字符串总是4位长度? –