Maison  >  Article  >  interface Web  >  Comment changer la taille et les octets d'un certain bit d'une chaîne en js

Comment changer la taille et les octets d'un certain bit d'une chaîne en js

下次还敢
下次还敢original
2024-05-09 00:30:301173parcourir

Il existe trois façons de modifier la valeur à une position spécifique dans une chaîne JavaScript : utilisez le code de caractère pour obtenir le code de caractère du nouveau caractère, puis utilisez-le pour remplacer la valeur à la position spécifiée dans la chaîne. Utilisez la méthode splice() pour remplacer les caractères aux positions spécifiées dans une chaîne. Pour les chaînes d'octets, convertissez la chaîne en Uint16Array, modifiez les positions correspondantes, puis convertissez le Uint16Array modifié en chaîne.

Comment changer la taille et les octets d'un certain bit d'une chaîne en js

Comment modifier la valeur à une position spécifique dans une chaîne JavaScript

Méthode 1 : Utiliser des codes de caractères

Pour modifier la valeur à une position spécifique dans une chaîne, vous pouvez utiliser des codes de caractères . Un code de caractère est un nombre qui représente la valeur correspondante d'un caractère dans le jeu de caractères Unicode.

<code class="js">const str = "Hello";
const newCharacter = "W";
const newCharCode = newCharacter.charCodeAt(0); // 获取新字符的字符代码

str[2] = String.fromCharCode(newCharCode); // 用新字符代码更改字符串中指定位置的值

console.log(str); // 输出: "Hewllo"</code>

Méthode 2 : Utilisez la méthode splice()

Vous pouvez également utiliser la méthode splice() pour remplacer des caractères à des positions spécifiées dans la chaîne.

<code class="js">const str = "Hello";
const replacementCharacter = "W";
const index = 2;

str.splice(index, 1, replacementCharacter); // 用新字符替换指定位置的字符

console.log(str); // 输出: "Hewllo"</code>

Modifier les octets

Les octets des caractères d'une chaîne ne peuvent pas être modifiés directement, car les chaînes JavaScript sont codées en UTF-16 et chaque caractère est représenté par deux octets. Pour modifier les octets d'un caractère, suivez les étapes suivantes :

  1. Convertissez la chaîne en Uint16Array.
  2. Modifiez la position correspondante dans Uint16Array.
  3. Convertissez Uint16Array modifié en chaîne.
<code class="js">const str = "Hello";
const charIndex = 2; // 修改第 3 个字符(索引从 0 开始)
const newCharacter = "W";
const charCode = newCharacter.charCodeAt(0);

// 将字符串转换成 Uint16Array
const arr = new Uint16Array(str.length);
for (let i = 0; i < str.length; i++) {
  arr[i] = str.charCodeAt(i);
}

// 修改 Uint16Array 中指定位置的值
arr[charIndex] = charCode;

// 将 Uint16Array 转换成字符串
const newStr = String.fromCharCode(...arr);

console.log(newStr); // 输出: "Hewllo"</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn