有什么理由我应该使用string.charAt(x)而不是括号符号string[x]吗?
string.charAt(x)
string[x]
括号表示法现在适用于所有主流浏览器,IE7 及以下版本除外。
// Bracket Notation "Test String1"[6] // charAt Implementation "Test String1".charAt(6)
这种表示法在 IE7 中不起作用。 第一个代码片段将在 IE7 中返回 undefined。如果您碰巧在整个代码中对字符串使用括号表示法并且想要迁移到.charAt(pos),这真的很痛苦:括号在您的代码中使用,并且没有简单的方法来检测它是用于字符串还是数组/目的。 您不能使用此表示法设置字符。 由于没有任何形式的警告,这确实令人困惑和沮丧。如果您正在使用该 .charAt(pos)功能,您就不会想要这样做。
这种表示法在 IE7 中不起作用。 第一个代码片段将在 IE7 中返回 undefined。如果您碰巧在整个代码中对字符串使用括号表示法并且想要迁移到.charAt(pos),这真的很痛苦:括号在您的代码中使用,并且没有简单的方法来检测它是用于字符串还是数组/目的。
.charAt(pos)
您不能使用此表示法设置字符。 由于没有任何形式的警告,这确实令人困惑和沮丧。如果您正在使用该 .charAt(pos)功能,您就不会想要这样做。