在Titanium mobile中,String的函数无法正常工作。
console.log( "test2".indexOf( /tes/i ) );
总是给-1
答案 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')