我正在尝试使用Javascript indexOf()
函数来查找两个字符的索引位置,即。字符串中的[
和]
。但它显示了奇怪的行为,即它找到了开括号[
的索引,但返回空字符串作为]
的索引。
Google Chrome Inspector的Console
标签中没有错误。
所以这就是问题所在。为什么会发生这种情况?我该如何解决这个问题?
var string = 'allPeoplesArray[0][peopleNameInput]';
var indexOfFirstOpeningBracket = string.indexOf('[');
alert('indexOfFirstOpeningBracket: ' + indexOfFirstOpeningBracket);//check
var indexOfFirstClosingBracket = string.indexOf(']');
alert('indexOfFirstClosingBracket') + indexOfFirstClosingBracket;//check

答案 0 :(得分:4)
你过早关闭提醒括号
var string = 'allPeoplesArray[0][peopleNameInput]';
var indexOfFirstOpeningBracket = string.indexOf('[');
alert('indexOfFirstOpeningBracket: ' + indexOfFirstOpeningBracket);//check
var indexOfFirstClosingBracket = string.indexOf(']');
alert('indexOfFirstClosingBracket' + indexOfFirstClosingBracket);//check

答案 1 :(得分:1)
@Ebrahim Poursadeqi的回答绝对正确。我只是在解释一下。
alert('indexOfFirstClosingBracket') + indexOfFirstClosingBracket;
这一行有一个错误。请注意'indexOfFirstClosingBracket'
后有一个结束括号。将其从那里删除并将其放在声明的末尾。
alert('indexOfFirstClosingBracket' + indexOfFirstClosingBracket);
该程序将按预期工作。希望这对你有用。