孟加拉语Unicode字符串长度差异

时间:2019-05-05 15:24:52

标签: javascript string unicode

我发现用肉眼看到的同一根绳子有两种不同的长度。

"ব্রাহ্মণবাড়িয়া".length
16
"ব্রাহ্মণবাড়িয়া".length
14

造成这种差异的原因是什么?

enter image description here

1 个答案:

答案 0 :(得分:3)

JS中的

.length返回字符串中的代码点数。自己检查一下:

var a = "ব্রাহ্মণবাড়িয়া";
var b = "ব্রাহ্মণবাড়িয়া";

// this returns 16 elements:
for (var i = 0; i < a.length; ++i) {console.log(a[i]);}
// 14 elements:
for (var i = 0; i < b.length; ++i) {console.log(b[i]);}

差异是由于字符能够以不同的方式表示:ড+়vsড়,য+়vsয়。