JavaScript - функция, которая принимает строку и индекс (число) и возвращает символ с этим индексом - PullRequest
0 голосов
/ 26 марта 2020

Я хочу написать функцию с именем charAt, которая принимает строку и индекс (число) и возвращает символ с этим индексом.

Функция должна возвращать пустую строку, если число превышает длину строки.

Не используйте встроенный метод charAt - тесты не пройдут, если вы это сделаете!

function charAt(str, num){
  return str.indexOf(num);
}


charAt('awesome', 2);

Я понимаю, что мой код проверяет, содержит ли число 2 строку 'awesome' и правильно ли она возвращает -1, что говорит мне о том, что число 2 не содержится в этой строке.

Как мне написать код, чтобы вернуть, какая буква начинается с индекса 2?

Ответы [ 2 ]

0 голосов
/ 26 марта 2020

Basi c и простое решение.

function charAt(str, num) {
  return str.slice(num, num + 1) || "";
}
console.log(charAt("awesome", 10));

// OR

const charAt2 = (str, num) => str.slice(num, num + 1) || "";
console.log(charAt2("awesome", 2));

//OR add in prototype
String.prototype.safeCharAt = function safeCharAt(num) {
  return this.slice(num, num + 1) || "";
};
console.log("awesome".safeCharAt(2));
console.log("awesome".safeCharAt(10));
0 голосов
/ 26 марта 2020
function charAt(str, num) {
    return str[num] ? str[num] : '';
}

Что-то вроде этого - относительно элегантное решение этой проблемы синтеза c.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...