这样做可以吗:
var myString="Hello!";
alert(myString[0]); // shows "H" in an alert window
还是应该用 charAt(0) 或 substr(0,1) 来完成?“可以吗”我的意思是它可以在大多数浏览器上工作,是否有最佳实践建议,否则等等。
谢谢你。
这样做可以吗:
var myString="Hello!";
alert(myString[0]); // shows "H" in an alert window
还是应该用 charAt(0) 或 substr(0,1) 来完成?“可以吗”我的意思是它可以在大多数浏览器上工作,是否有最佳实践建议,否则等等。
谢谢你。
在 ECMAScript 5 之前,将字符作为字符串的数字属性访问是非标准的,并且不适用于所有浏览器(例如,它不适用于 IE 6 或 7)。myString.charAt(0)当您的代码必须在非 ECMAScript 5 环境中工作时,您应该使用它。或者,如果您要访问字符串中的大量字符,则可以使用其split()方法将字符串转换为字符数组:
var myString = "Hello!";
var strChars = myString.split("");
alert(strChars[0]);
使用charAt可能是最好的主意,因为它最准确地传达了代码的意图。调用substr单个字符绝对是一种矫枉过正。
alert(myString.charAt(0));
2018 年回答:是的,可以访问数组之类的字符串。
语法清晰简洁。IE6 和 IE7 早已不复存在。我认为没有理由不使用它。
在 ES6 中,我们可以使用解构,因为字符串可以被视为数组:
const [...rest] = 'Hello!';
console.log(rest)
> Array ["H", "e", "l", "l", "o", "!"]
console.log(rest[0])
> "H"