为什么'indexOf'没有返回任何东西?

时间:2011-10-19 09:42:36

标签: javascript methods indexof

book I am reading告诉我打开JavaScript控制台并尝试代码"foo: bar".indexOf(":")。我在很多方面尝试过它。我尝试删除引号,将其放在show()alert()函数中。我似乎无法取笑任何东西。

JavaScript中有什么变化吗?作者有错吗?我应该得不到回报吗?我可能需要附加document.write吗?非常感谢任何帮助。

3 个答案:

答案 0 :(得分:1)

foo:bar是json中的属性定义,而indexOf应该处理一个左值(字符串变量,常量,或者至少可以包含字符的东西。我不知道为什么你的书是阅读希望你这样做,但它似乎不正确。使用indexOf的正确方法是:

var myObject = {
   foo:"bar"
}

alert(myObject.foo.indexOf("a"));

答案 1 :(得分:1)

尝试如下,它应该工作。通常,如果要搜索的值永远不会发生,indexOf()将返回-1。

var str="foo:bar";
document.write(str.indexOf(":") + "<br />");

输出应为3

答案 2 :(得分:1)

是的,Firefox 5+中的内容发生了变化 然而,控制台(ctrl-shift-k)仍然有效

Fx konsole

在错误控制台(ctrl-shift-J)中,您需要将其包装在alert:

enter image description here

相关问题