indexOf在Titanium mobile中无法正常工作

时间:2012-04-03 08:59:37

标签: javascript titanium titanium-mobile

在Titanium mobile中,String的函数无法正常工作。

console.log( "test2".indexOf( /tes/i )  );

总是给-1

3 个答案:

答案 0 :(得分:3)

indexOf不接受RegExp参数:它只接受一个字符串。您的正则表达式将转换为字符串("/tes/i"),然后将其用作indexOf的参数。显然,在这种情况下,这不会找到任何东西。

在所有Javascript引擎中都是如此,而不仅仅是在Titanium中。

答案 1 :(得分:1)

您可能想要添加引号,因为它不支持正则表达式,您只能提供字符串:

console.log( "test2".indexOf( '/tes/i' )  );

但在这种情况下,由于你提供正则表达式,它仍然找不到任何东西。然而,这将返回结果

console.log( "test2".indexOf( 'tes' )  );

对于正则表达式,您可能希望使用本机JavaScript,这是Titanium

完全支持的

答案 2 :(得分:0)

这对你有用吗?

/tes/i.test('test2')