Как добавить специальные символы через number raw?

#javascript

#javascript

Вопрос:

Я сгенерировал случайное число. Итак, я хочу добавить некоторые конкретные места для специальных символов

В качестве примера — nuzmo2b2yhougkpntd5srif0fdami12_f6gyve0acaddzmt_rbz0iwlizmioiwdmlj

Это способ генерирования случайных чисел.

     let randomkey = [...Array(64)].map(() => Math.random().toString(36)[2]).join('')
    console.log(randomkey)
  

Также я пытался использовать splice, но это не работает

 let updatedkey = randomkey.splice(20 , 0 , "_")
  

Это говорит о том, что splice не является функцией!

Ответ №1:

.splice это не метод string (MDN doc), поэтому, чтобы использовать его, вы должны преобразовать его в массив символов с помощью .split('') , затем выполнить .splice , затем преобразовать обратно в строку с помощью .join('')

 let randomkey = [...Array(64)].map(() => Math.random().toString(36)[2]).join('')
console.log(randomkey)

let updatedkey = randomkey.split('')
updatedkey.splice(20, 0, "_")
updatedkey = updatedkey.join('')

console.log(updatedkey)  

Комментарии:

1. В случае, если randomkey не нужно использовать перед вставкой специальных символов, было бы лучше не использовать .join('') и .split('') , а просто использовать .join('') после вставки желаемых символов в randomkey массив, чтобы преобразовать его в строку.

Ответ №2:

Вы можете использовать метод JavaScript String slice() :

 let updatedkey = randomkey.slice(0, 20)   "_"   randomkey.slice(20);