Как мне обработать ошибку для входной строки, чтобы не допустить цифры или символы - PullRequest
0 голосов
/ 03 ноября 2018

Я выполняю упражнение, и одна из функций - написать код, который принимает входные данные, содержащие только строки, и возвращает первое неповторяющийся символ Я уже сделал это, но я хотел бы сделать это умнее, обрабатывая любые ошибки, которые могут быть числом или символом. Я пытался все, что мог, но, похоже, не работает. Это должны быть только буквы и пробелы.

Вот что у меня есть.

function TheOutput(word){
  var a =word.length;          
  for(var i=0;   i < a;  i++){
  var char=word.charAt(i);
  if(word.indexOf(char)===word.lastIndexOf(char)){
    result = (char + " is not a number <br/>");                
    break;
  }
  return result;
  }
}

1 Ответ

0 голосов
/ 03 ноября 2018

Вы можете использовать регулярные выражения, если хотите проверить, содержит ли строка только буквы и пробелы.

var onlyLettersAndSpace = 'Valid string';
var stringWithNumbers = 'Invalid string 123';
var RegExpression = new RegExp(/^[a-zA-Z\s]*$/);
console.log(RegExpression.test(onlyLettersAndSpace));
// true
console.log(RegExpression.test(stringWithNumbers));
// false

В вашем случае вы можете сделать что-то вроде:

function testWord(word) {
    var RegExpression = new RegExp(/^[a-zA-Z\s]*$/);
    return RegExpression.test(word);
}

Вы можете сделать намного больше с регулярными выражениями, см. RegExp MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp

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