Heim  >  Artikel  >  Web-Frontend  >  So ändern Sie die Größe und Bytes eines bestimmten Bits einer Zeichenfolge in js

So ändern Sie die Größe und Bytes eines bestimmten Bits einer Zeichenfolge in js

下次还敢
下次还敢Original
2024-05-09 00:30:301132Durchsuche

Es gibt drei Möglichkeiten, den Wert an einer bestimmten Position in einer JavaScript-Zeichenfolge zu ändern: Verwenden Sie den Zeichencode, um den Zeichencode des neuen Zeichens abzurufen, und verwenden Sie ihn dann, um den Wert an der angegebenen Position in der Zeichenfolge zu ersetzen. Verwenden Sie die Methode splice(), um Zeichen an bestimmten Positionen in einer Zeichenfolge zu ersetzen. Konvertieren Sie für Byte-Strings die Zeichenfolge in ein Uint16Array, ändern Sie die entsprechenden Positionen und konvertieren Sie dann das geänderte Uint16Array in eine Zeichenfolge.

So ändern Sie die Größe und Bytes eines bestimmten Bits einer Zeichenfolge in js

So ändern Sie den Wert an einer bestimmten Position in einer JavaScript-Zeichenfolge

Methode 1: Verwenden Sie Zeichencodes

Um den Wert an einer bestimmten Position in einer Zeichenfolge zu ändern, können Sie Zeichencodes verwenden . Ein Zeichencode ist eine Zahl, die den entsprechenden Wert eines Zeichens im Unicode-Zeichensatz darstellt.

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

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

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

Methode 2: Verwenden Sie die splice()-Methode

Sie können auch die splice()-Methode verwenden, um Zeichen an bestimmten Positionen in der Zeichenfolge zu ersetzen.

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

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

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

Bytes ändern

Die Bytes von Zeichen in einer Zeichenfolge können nicht direkt geändert werden, da JavaScript-Zeichenfolgen UTF-16-codiert sind und jedes Zeichen durch zwei Bytes dargestellt wird. Um die Bytes eines Zeichens zu ändern, führen Sie die folgenden Schritte aus:

  1. Konvertieren Sie die Zeichenfolge in ein Uint16Array.
  2. Ändern Sie die entsprechende Position im Uint16Array.
  3. Konvertieren Sie das geänderte Uint16Array in einen String.
<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>

Das obige ist der detaillierte Inhalt vonSo ändern Sie die Größe und Bytes eines bestimmten Bits einer Zeichenfolge in js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn