Как проверить, содержит ли строка значение в определенном индексе / позиции? - PullRequest
0 голосов
/ 03 мая 2020

Я пытаюсь проверить строку чисел и wi sh, чтобы проверить, является ли первое число в строке 4. Я пробовал использовать включает, но он НАЧИНАЕТ проверку с позиции 0, и если 4 происходит где-нибудь, это правда который я не хочу. Я хочу выделить его первым номером.

if (!card_number.includes("4", 0)) {
    //show error
}

Ответы [ 2 ]

1 голос
/ 03 мая 2020

startsWith для этой самой вещи:

if (card_number.startsWith("4")) {

Или, конечно, charAt, когда это просто односимвольная строка:

if (card_number.charAt(0) === "4") {

И если вы хотели чтобы проверить позже в строке (что я не думаю, что вы делаете в этом случае, но ...), startsWith принимает начальную позицию в качестве необязательного второго аргумента.

if (card_number.startsWith("4", 20)) { // Does it have "4" at index 20?

И снова, если вы ищете только одного персонажа, вы можете сделать это и с помощью charAt:

if (card_number.charAt(20) === "4")) { // Does it have "4" at index 20?
0 голосов
/ 03 мая 2020

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

let strArray = ['345', '444', '456', '789'];
strArray.forEach((item) => {
  if (parseInt(item[0], 10) === 4) {
    console.log(item)
  }
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...