Rumah > Artikel > hujung hadapan web > Bagaimana untuk menukar saiz dan bait nilai rentetan tertentu dalam js
Terdapat tiga cara untuk mengubah suai nilai pada kedudukan tertentu dalam rentetan JavaScript: Gunakan kod aksara untuk mendapatkan kod aksara bagi aksara baharu, dan kemudian gunakannya untuk menggantikan nilai pada kedudukan yang ditentukan dalam rentetan. Gunakan kaedah splice() untuk menggantikan aksara pada kedudukan tertentu dalam rentetan. Untuk rentetan bait, tukar rentetan kepada Uint16Array, ubah suai kedudukan yang sepadan dan kemudian tukar Uint16Array yang diubah suai kepada rentetan.
Cara mengubah suai nilai pada kedudukan tertentu dalam rentetan JavaScript
Kaedah 1: Gunakan kod aksara
Untuk mengubah suai nilai pada penggunaan tertentu dalam rentetan aksara, anda boleh . Kod aksara ialah nombor yang mewakili nilai yang sepadan dengan aksara dalam set aksara 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>
Kaedah 2: Gunakan kaedah splice()
Anda juga boleh menggunakan kaedah splice()
untuk menggantikan aksara pada kedudukan yang ditentukan dalam rentetan.
<code class="js">const str = "Hello"; const replacementCharacter = "W"; const index = 2; str.splice(index, 1, replacementCharacter); // 用新字符替换指定位置的字符 console.log(str); // 输出: "Hewllo"</code>
Ubah suai bait
Bait aksara dalam rentetan tidak boleh diubah suai secara langsung, kerana rentetan JavaScript dikodkan UTF-16 dan setiap aksara diwakili oleh dua bait. Untuk mengubah suai bait aksara, gunakan langkah berikut:
<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>
Atas ialah kandungan terperinci Bagaimana untuk menukar saiz dan bait nilai rentetan tertentu dalam js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!