Предположим, эту функцию:Тест LastIndex двух строки
function renameDoc() {
var newFilename = prompt("Name this document:", filename);
if (newFilename !== null) {
if (newFilename === "") {
changeFilename(); // "untitled.txt"
} else {
changeFilename(newFilename.lastIndexOf(".txt") == -1 ?
newFilename + ".txt" : newFilename);
}
return true;
}
}
Эта функция тесты, если newFilename
имеет .txt
на последней. и это работает отлично.
Но хочу, чтобы проверить, если newFilename
имеет .txt.
или .md
Я пытаюсь это
function renameDoc() {
var newFilename = prompt("Name this document:", filename);
if (newFilename !== null) {
if (newFilename === "") {
changeFilename(); // "untitled.txt"
} else {
changeFilename((newFilename.lastIndexOf(".txt") && newFilename.lastIndexOf(".md")) == -1 ?
newFilename + ".txt" : newFilename);
}
return true;
}
}
Это, кажется, не работает отлично.
Можете ли вы мне помочь?
Вы можете использовать условие '||' вместо этого. – Navin
И НЕ ИЛИ. Если последний индекс равен -1, это означает, что строка не указана в тексте. Проверка того, что оба значения равны -1, означает, что файл не заканчивается на .txt или с .md, поэтому рекомендуется добавить .txt к этим файлам. Использование условия ИЛИ не дает полезной информации, поскольку возвращает FALSE только тогда, когда файл заканчивается как .txt, так и .md, что невозможно. –
@ La-comadreja вы правы. я скучал. – Navin