Я заметил, что FireFox сообщает об ошибке в моем коде, но не может понять, что не так.Я не понимаю эту ошибку подстроки
[13:36:02.868] TypeError: arr[i][0].substring is not a function @ file:///home/asdf/Desktop/app/dic.js:10
Который, кажется, указывает на переменную строку ss. AFAIK, я использую его правильно (т.е. в конце строки). Здесь приведен фрагмент кода ...
// quick array example...
var arr = [
["tammikuuta", "January"],
["helmikuuta", "February"],
["maaliskuuta", "March"]
];
function userInput(val){
var result = document.getElementById('result');
result.innerHTML = '';
if(val && val.length > 2){
for(var i = 0; i < arr.length; i++){
var ss = arr[i][0].substring(0,val.length); // ss (SubString) checks the number of characters currently typed
if(ss.toLowerCase() !== val.toLowerCase()){ // check substring against the user input
continue;
}
else { // display the output...
var res = arr[i][1];
var reg = eval('/'+val+'/i');
var found = arr[i][0].replace(reg, '<span class="r">$&<\/span>');
if(result.innerHTML.length > 0){
result.innerHTML += ',<br />';
}
result.innerHTML += found + '<b>' + ' > ' + '</b>' + '<span class="g">' + res + '<\/span>';
}
}
}
else {return;}
}
Прошу совета?
Отредактировано: добавлен еще код.
вы пытались обр [я] [0] .ToString() подстрока (0, val.length). И что содержит ваш массив? –
'arr [i] [0]' просто не содержит строки. И если это не строка, у нее не будет метода 'substring'. –
Мы не можем помочь, если вы не покажете нам, что такое 'arr'. – nnnnnn