2016-08-09 3 views
0

я получил строку Как этоCant Найти положение буквы в строке

var test = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" 

На самом деле я не могу найти положение «Т» в этой строке. не знаю почему, я IndexOf, попытался преобразовать это в строковый объект, но все получили напрасно

Примечание: Пожалуйста, используйте точную строку, заданную в вопросе, Спасибо,

+0

'test.indexOf ('т')' – Rayon

+0

без пробелов, 'test.split (' ') .indexOf (' т') ' – Rayon

+0

@Rayon дает -1 (test.split ('') .indexOf ('t')) – Krishna

ответ

3

Это нестандартные символы, поэтому для поиска «t» внутри, вы должны фактически скопировать и вставить из вашей строки.

>> test.indexOf("t") 
>> 29 

Для демонстрации:

"t".charCodeAt() 
116 // ASCII code for lowercase t 

"t".charCodeAt() 
65364 // Something non-standard 
1

Вы можете» т найти, потому что это не «т», который вы пытаетесь найти. Взгляните на "t".charCodeAt(0), который возвращает 65364 и "t".charCodeAt(0), что дает 116. Это разные символы.

1

Использование String.prototype.indexOf(), который возвращает индекс в вызывающем строковом объекте первого вхождения заданного значения.

Обратите внимание, что t в вашей строке является «нестандартным символом» и не может быть найден indexOf(), если вы используете «стандартный символ».

Более подробная информация здесь: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/indexOf

var test = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
 
console.log(test.indexOf("t"));