Javascript 我应该使用数组还是字符串来存储字母

Javascript 我应该使用数组还是字符串来存储字母,javascript,Javascript,我有一个常量元素,其中我只有字母。 我只需要通过索引输出请求的字母 下面是一个简单的片段来说明我的意思: //作为数组 常数arr=[“a”、“b”、“c”、“d”]; 对于(i=0;i

我有一个常量元素,其中我只有字母。
我只需要通过索引输出请求的字母

下面是一个简单的片段来说明我的意思:

//作为数组
常数arr=[“a”、“b”、“c”、“d”];
对于(i=0;i<4;i++){
控制台日志(arr[i]);
}
//作为字符串
const str=“abcd”;
对于(i=0;i<4;i++){
console.log(str[i]);

}
如果字母都用一个UTF-16代码单元表示(例如,所有英文字母都是),那么是否使用带有
[n]
的数组或带有
[n]
.charAt(n)
的字符串完全取决于您

如果“字母”不是全部用一个UTF-16代码单元表示(例如,如果它们真的是emojis),那么最好使用数组,因为如果使用字符串,则必须使用(这是相对较新的)和(令人困惑的!)您必须找出要使用的
n
(因为
codePointAt(n))
不是“给我第n个代码点”,而是“给我字符串索引n处的代码点”-例如,
n
仍然是以代码单位度量的,而不是代码点。然后你必须通过
string.fromCodePoint
来获取“字母”


(这是因为它们不是字符串,而是UTF-16代码单元的字符串[允许无效的代理项对]。某些字符[Unicode称之为“代码点”]不能用单个UTF-16代码单元表示,而是需要一对。例如,
如果所有字母都用一个UTF-16代码单元表示(例如,所有英文字母都是),那么是否使用带有
[n]
的数组或带有
[n]
.charAt(n)
的字符串完全取决于您

如果“字母”不是全部用一个UTF-16代码单元表示(例如,如果它们真的是emojis),那么最好使用数组,因为如果使用字符串,则必须使用(这是相对较新的)和(令人困惑的!)您必须找出要使用的
n
(因为
codePointAt(n))
不是“给我第n个代码点”,而是“给我字符串索引n处的代码点”-例如,
n
仍然是以代码单位度量的,而不是代码点。然后你必须通过
string.fromCodePoint
来获取“字母”


(这是因为它们不是字符串,而是UTF-16代码单元的字符串[允许无效的代理项对]。某些字符[Unicode称之为“代码点”]不能用单个UTF-16代码单元表示,而是需要一对。例如,
"我认为字符串是一种更好的方法。如果它太长:数组。否则,字符串就好了。我认为在这种情况下,数组更自然,因为您使用的是单独的项目,而不是一个整体。此外,数组有更多的内置方法来管理项目,如映射、减少、筛选等。我选择数组,这样会更容易维护a未来的代码我认为字符串是一种更好的方法。如果它太长:数组。否则,字符串是好的。我认为在这种情况下,数组更自然,因为你使用单独的项目,而不是一个整体。此外,数组有更多的内置方法来管理项目,如映射、减少、筛选等。我投票选择数组,它是正确的将更容易在未来的数据库中维护您的代码以获得您的答案。我修改了一点我的问题,您认为它可以重新打开吗?@TakitIsy:确实可以。谢谢您的回答。我修改了一点我的问题,您认为它可以重新打开吗?@TakitIsy:确实可以。