Почему у задачи такое решение?
Дано слово. Получите его последнюю букву. Если слово заканчивается на мягкий знак, то получите предпоследнюю букву.
Вот мой код:
let word_11 = prompt("напишите слово") if(word_11.slice(-1) === "ь") { console.log(word_11.slice(-2, -1)) } else if(word_11.slice(-1) != "ь") { console.log(word_11.slice(-1)) } |
let word_11 = prompt("напишите слово") if(word_11.slice(-1) === "ь") { console.log(word_11.slice(-2, -1)) } else if(word_11.slice(-1) != "ь") { console.log(word_11.slice(-1)) }
Не работает, я не могу понять как работает slice(-2, -1).зачем нужен -2
Дополнительно:
А как вы код написали, если не можете понять, как он работает?
Вы открывали документацию функции, читали, что она делает и какие аргументы принимает?
Ну, давайте я вам её сюда скопирую:
Parameters
indexStart
The index of the first character to include in the returned substring.
indexEnd Optional
The index of the first character to exclude from the returned substring.
Description
If indexStart < 0, the index is counted from the end of the string. More formally, in this case, the substring starts at max(indexStart + str.length, 0).
If indexEnd < 0, the index is counted from the end of the string. More formally, in this case, the substring ends at max(indexEnd + str.length, 0).
зачем нужен (-2, -1)
Для выполнения вот этого условия задачи: "если слово заканчивается на мягкий знак, то получите предпоследнюю букву". Я искренне не понимаю, что тут можно добавить...
- Я написал код, но он с начало не работал, потом slice(-2, -1) начал писать цифры что бы работало. И сейчас не мог понять как заработало. Ну для чего это нужнo ?Зачем -1 я понимаю, а зачем -2 не понимаю
- Вот я скопировал описание параметров из документации. Оно вам непонятно? Какая часть?
-
Зачем -1 я понимаю
Опишите своими словами - зачем? И в чём вы видите принципиальное отличие от -2, почему одно вам понятно, а другое нет?
Это, если что, не стёб, а наводящие вопросы, ответы на которые помогут нам разобраться. -
А как вы код написали, если не можете понять, как он работает?
ChatGPT )
- Алексей Уколов, понятно что -1 нужен для -1, а зачем -2?
- Виктор Кожухарь, раскрыт секрет Полишинеля!
Николай Медведков, это философский вопрос... Зачем нужны все мы?.. - Алексей Уколов, всё тлен.
если чо я уже простынку присматриваю. - > Я искренне не понимаю, что тут можно добавить...
Я бы добавил что у строк появился более понятный метод .at() =)
- Lynn «Кофеман», а chatgpt не в курсе))
- Naims, у метода slice() два параметра, но второй может быть не указан.
Первый - индекс начала.
Второй - индекс конца (если указан). Если не указан, то до конца последовательности.
Отсюда вывод:
.slice(-1) означает "возьми элементы, начиная с последнего (-1) и до конца", т.е. "возьми последний элемент".
.slice(-2, -1) означает "возьми элементы, начиная с предпоследнего (-2) и до последнего (-1) НЕ включительно", т.е. "возьми предпоследний элемент".И да, в твоём коде условие else if(word_11.slice(-1) != "ь") лишнее совершенно. Если ты попал в else, значит, условие в первом if не выполнилось, а значит, слово не заканчивается на мягкий знак.
- Vindicar, спасибо большое
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для подсветки синтаксиса кода на сайте stackoverflow.com вы можете использовать тег
. Этот тег позволяет отображать код на языке программирования PHP с подсветкой синтаксиса для удобства чтения. Пример использования тега <pre lang="php">: <pre lang="php">
Этот код будет отображаться с подсветкой синтаксиса PHP, что делает его более читаемым и понятным для других пользователей. Тег