'在' JavaScript中的运算符。字符串比较

时间:2015-05-14 08:06:14

标签: javascript string

您好我是JavaScript的新手,我发现了一个基本问题:

当我在Python中使用那段代码时:

'a' in 'aaa' 

我得到True

当我在JavaScript中执行相同操作时,我得到错误:

TypeError: Cannot use 'in' operator to search for 'a' in aaa

如何获得与Python类似的结果?

5 个答案:

答案 0 :(得分:8)

我认为一种方法是使用String.indexOf()

'aaa' .indexOf('a') > -1

在javascript中,in operator用于检查对象是否具有属性

答案 1 :(得分:3)

您正在寻找indexOf

'aaa'.indexOf('a') == 0 //if a char exists in the string, indexOf will return
                        // the index of the first instance of the char
'aaa'.indexOf('b') == -1 //if a char doesn't exist in the string, indexOf will return -1

答案 2 :(得分:2)

重复(How to check whether a string contains a substring in JavaScript?

试试这个:

var s = "aaaabbbaaa";
var result = s.indexOf("a") > -1;

答案 3 :(得分:2)

From MDN

  

如果指定的属性在指定的对象中,则in运算符返回true。

您对'aaa'.indexOf('a')感兴趣。

答案 4 :(得分:2)

尝试:

if('aaa'.search('a')>-1){
   //
}