简体   繁体   English

为什么 blogspot 在 JS 上返回 false 结果?

[英]Why does blogspot return false result on JS?

This is a Sinhalese Transliteration Convertor .这是一个僧伽罗音译转换器 It returns wrong output.它返回错误的输出。 Eg: If I enter m , it must return ම් , but it reruns ම්例如:如果我输入m ,它必须返回ම් ,但它重新运行ම් . . I don't know why it gives additional ්我不知道为什么它会提供额外的් The same code is working well in codepen , but not in Blogspot.相同的代码在codepen 中运行良好,但在 Blogspot 中不运行。

The JS is JS是

vowelsUni[0]='ඌ'; vowels[0]='oo'; vowelModifiersUni[0]='ූ'; vowelsUni[1]='ඕ'; vowels[1]='o\\\\)'; vowelModifiersUni[1]='ෝ'; vowelsUni[2]='ඕ'; vowels[2]='oe'; vowelModifiersUni[2]='ෝ'; vowelsUni[3]='ආ'; vowels[3]='aa'; vowelModifiersUni[3]='ා'; vowelsUni[4]='ආ'; vowels[4]='a\\\\)'; vowelModifiersUni[4]='ා'; vowelsUni[5]='ඈ'; vowels[5]='Aa'; vowelModifiersUni[5]='ෑ'; vowelsUni[6]='ඈ'; vowels[6]='A\\\\)'; vowelModifiersUni[6]='ෑ'; vowelsUni[7]='ඈ'; vowels[7]='ae'; vowelModifiersUni[7]='ෑ'; vowelsUni[8]='ඊ'; vowels[8]='ii'; vowelModifiersUni[8]='ී'; vowelsUni[9]='ඊ'; vowels[9]='i\\\\)'; vowelModifiersUni[9]='ී'; vowelsUni[10]='ඊ'; vowels[10]='ie'; vowelModifiersUni[10]='ී'; vowelsUni[11]='ඊ'; vowels[11]='ee'; vowelModifiersUni[11]='ී'; vowelsUni[12]='ඒ'; vowels[12]='ea'; vowelModifiersUni[12]='ේ'; vowelsUni[13]='ඒ'; vowels[13]='e\\\\)'; vowelModifiersUni[13]='ේ'; vowelsUni[14]='ඒ'; vowels[14]='ei'; vowelModifiersUni[14]='ේ'; vowelsUni[15]='ඌ'; vowels[15]='uu'; vowelModifiersUni[15]='ූ'; vowelsUni[16]='ඌ'; vowels[16]='u\\\\)'; vowelModifiersUni[16]='ූ'; vowelsUni[17]='ඖ'; vowels[17]='au'; vowelModifiersUni[17]='ෞ'; vowelsUni[18]='ඇ'; vowels[18]='/\\a'; vowelModifiersUni[18]='ැ'; vowelsUni[19]='අ'; vowels[19]='a'; vowelModifiersUni[19]=''; vowelsUni[20]='ඇ'; vowels[20]='A'; vowelModifiersUni[20]='ැ'; vowelsUni[21]='ඉ'; vowels[21]='i'; vowelModifiersUni[21]='ි'; vowelsUni[22]='එ'; vowels[22]='e'; vowelModifiersUni[22]='ෙ'; vowelsUni[23]='උ'; vowels[23]='u'; vowelModifiersUni[23]='ු'; vowelsUni[24]='ඔ'; vowels[24]='o'; vowelModifiersUni[24]='ො'; vowelsUni[25]='ඓ'; vowels[25]='I'; vowelModifiersUni[25]='ෛ'; nVowels=26; specialConsonantsUni[0]='ං'; specialConsonants[0]=/\\\\n/g; specialConsonantsUni[1]='ඃ'; specialConsonants[1]=/\\\\h/g; specialConsonantsUni[2]='ඞ'; specialConsonants[2]=/\\\\N/g; specialConsonantsUni[3]='ඍ'; specialConsonants[3]=/\\\\R/g; //special characher Repaya specialConsonantsUni[4]='ර්'+'\‍'; specialConsonants[4]=/R/g; specialConsonantsUni[5]='ර්'+'\‍'; specialConsonants[5]=/\\\\r/g; consonantsUni[0]='ඬ'; consonants[0]='nnd'; consonantsUni[1]='ඳ'; consonants[1]='nndh'; consonantsUni[2]='ඟ'; consonants[2]='nng'; consonantsUni[3]='ථ'; consonants[3]='Th'; consonantsUni[4]='ධ'; consonants[4]='Dh'; consonantsUni[5]='ඝ'; consonants[5]='gh'; consonantsUni[6]='ඡ'; consonants[6]='Ch'; consonantsUni[7]='ඵ'; consonants[7]='ph'; consonantsUni[8]='භ'; consonants[8]='bh'; consonantsUni[9]='ශ'; consonants[9]='sh'; consonantsUni[10]='ෂ'; consonants[10]='Sh'; consonantsUni[11]='ඥ'; consonants[11]='GN'; consonantsUni[12]='ඤ'; consonants[12]='KN'; consonantsUni[13]='ළු'; consonants[13]='Lu'; consonantsUni[14]='ද'; consonants[14]='dh'; consonantsUni[15]='ච'; consonants[15]='ch'; consonantsUni[16]='ඛ'; consonants[16]='kh'; consonantsUni[17]='ත'; consonants[17]='th'; consonantsUni[18]='ට'; consonants[18]='t'; consonantsUni[19]='ක'; consonants[19]='k'; consonantsUni[20]='ඩ'; consonants[20]='d'; consonantsUni[21]='න'; consonants[21]='n'; consonantsUni[22]='ප'; consonants[22]='p'; consonantsUni[23]='බ'; consonants[23]='b'; consonantsUni[24]='ම'; consonants[24]='m'; consonantsUni[25]='‍ය'; consonants[25]='\\\\' + 'y'; consonantsUni[26]='‍ය'; consonants[26]='Y'; consonantsUni[27]='ය'; consonants[27]='y'; consonantsUni[28]='ජ'; consonants[28]='j'; consonantsUni[29]='ල'; consonants[29]='l'; consonantsUni[30]='ව'; consonants[30]='v'; consonantsUni[31]='ව'; consonants[31]='w'; consonantsUni[32]='ස'; consonants[32]='s'; consonantsUni[33]='හ'; consonants[33]='h'; consonantsUni[34]='ණ'; consonants[34]='N'; consonantsUni[35]='ළ'; consonants[35]='L'; consonantsUni[36]='ඛ'; consonants[36]='K'; consonantsUni[37]='ඝ'; consonants[37]='G'; consonantsUni[38]='ඨ'; consonants[38]='T'; consonantsUni[39]='ඪ'; consonants[39]='D'; consonantsUni[40]='ඵ'; consonants[40]='P'; consonantsUni[41]='ඹ'; consonants[41]='B'; consonantsUni[42]='ෆ'; consonants[42]='f'; consonantsUni[43]='ඣ'; consonants[43]='q'; consonantsUni[44]='ග'; consonants[44]='g'; //last because we need to ommit this in dealing with Rakaransha consonantsUni[45]='ර'; consonants[45]='r'; specialCharUni[0]='ෲ'; specialChar[0]='ruu'; specialCharUni[1]='ෘ'; specialChar[1]='ru'; //specialCharUni[2]='්‍ර'; specialChar[2]='ra'; function startText() { var s,r,v; 函数 startText() { var s,r,v; text = document.txtBox.box1.value; text = document.txtBox.box1.value; //special consonents for (var i=0; i //consonents + HAL for (var i=0; i<consonants.length; i++){ r = new RegExp(consonants[i], "g"); text = text.replace(r, consonantsUni[i]+"්"); } //vowels for (var i=0; i<vowels.length; i++){ r = new RegExp(vowels[i], "g"); text = text.replace(r, vowelsUni[i]); } document.txtBox.box2.value=text; } // End --> // 特殊辅音 for (var i=0; i //consonents + HAL for (var i=0; i<consonants.length; i++){ r = new RegExp(consonants[i], "g"); text = text.replace(r, consonantsUni[i]+"්"); } //vowels for (var i=0; i<vowels.length; i++){ r = new RegExp(vowels[i], "g"); text = text.replace(r, vowelsUni[i]); } document.txtBox.box2.value=text; } // 结束 -->
<body onload="javascript:txtBox.box1.focus();">
<table width="100%" border="0"><form name="txtBox" id="txtBox">
                          <tr>
                            <td>
                            <em>Input</em></td>
                          </tr>
                          <tr>
                            <td width="100%"><textarea onkeyup="startText();" onselect="startText();" onclick="startText();" style="font-size: 12pt; width: 100%;" name="box1" rows="8"></textarea>
                        </td>
                          </tr>
                          <tr>
                            <td><input type="reset" value="Reset" style="position: relative; center: width: 100px;"></td>
                          </tr>
                          <tr>
                            <td><em>Sinhala Unicode</em></td>
                          </tr>
                          <tr>
                            <td><textarea name="box2" rows="8" readonly="readonly" style="font-size: 14pt; font-family: Potha, Malithi Web , Arial Unicode MS; width: 100%;"></textarea></td>

                          </tr>

                          </form>
                        </table>
                        <p><strong>

</body>

Please check both links;请检查两个链接; one on blogspot and another on codepen.一个在 blogspot 上,另一个在 codepen 上。 Two links are given above in 1st paragraph.上面第 1 段中给出了两个链接。

for (var i=0; i<consonants.length; i++){
    r = new RegExp(consonants[i], "g");
    text = text.replace(r, consonantsUni[i]+"්");
}

The problem is at "්" at the end of this for loop.问题出在 for 循环末尾的“්”处。 The browser translates this emoji to a character entity code (in this case it's &#3530; <-- If I were to type this not in a code block, ් is what it looks like).浏览器将此表情符号转换为字符实体代码(在本例中它是&#3530; <-- 如果我不是在代码块中输入它,් 就是它的样子)。

This can be fixed by using the String.fromCharCode() method in Javascript.这可以通过使用 Javascript 中的String.fromCharCode()方法来解决。 This is what you should use instead:这是您应该使用的:

for (var i=0; i<consonants.length; i++){
    r = new RegExp(consonants[i], "g");
    text = text.replace(r, consonantsUni[i] + String.fromCharCode(3530));
}

I hope this helps!我希望这有帮助!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM