有什么理由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)功能,则不会想这么做。