Rumah  >  Soal Jawab  >  teks badan

Ralat JavaScript mengendalikan aksara khas †

Dalam textarea Saya ingin menentukan kedudukan watak "†" terakhir.

var textField = document.getElementById("main_field"); 

console.log(textField.value.indexOf("†"));
<textarea id="main_field">Text † entered by user † †</textarea>

Walaupun ini berfungsi dengan baik di sini, saya mendapat hasil pelik dalam penyemak imbas

Walau bagaimanapun, ia tidak dapat mencari watak dan mengembalikan -1.

Saya cuba memahami persembahan dalaman watak. Ia keluar sebagai "-" dalam konsol, yang saya rasa pelik.

P粉187160883P粉187160883408 hari yang lalu449

membalas semua(1)saya akan balas

  • P粉043432210

    P粉0434322102023-09-08 09:31:02

    Pertama, mari lihat cara ia berfungsi.

    console.log(document.getElementById("textField1").value.lastIndexOf("†"));
    console.log(document.getElementById("textField2").value.lastIndexOf("†"));
    <textarea id="textField1" value="a†b†c†d"></textarea>
    <textarea id="textField2">a†b†c†d</textarea>

    Sekarang kami telah melihat ini, kami perlu mengetahui apa yang salah dengan kod anda. Mula-mula, anda perlu menyemak sama ada textField.value mengandungi watak yang anda cari. Seterusnya, lihat panggilan ini dalam kod:

    .substring(0, startPos)

    Ini sebenarnya mendapatkannya dari awal sehingga startPos 的子字符串。从 startPos 的名称来看,似乎不是从 startPos 之前获取字符串,而是从 startPos mendapatnya.

    balas
    0
  • Batalbalas