我有一个字符串,我需要得到它的第一个字符。

Var x = 'somestring'; 警报(x [0]);//在ie7中返回undefined

如何修复我的代码?


当前回答

由于每个字符串都是一个数组,可能最简洁的解决方案是使用新的展开操作符:

const x = 'somestring'
const [head, ...tail] = x
console.log(head) // 's'

额外的好处是你现在可以访问整个字符串,但第一个字符使用join(")在尾部:

console.log(tail.join('')) // 'omestring'

其他回答

已经10年了,还没有人提到RegExp。

var x = 'somestring'; console.log(x.match(/./)[0]);

var x = "somestring"
alert(x.charAt(0));

charAt()方法允许您指定所需字符的位置。

你要做的是获取数组x的位置上的字符,它没有定义为x不是数组。

你可以这样用:

'Hello Mr Been'.split(' ').map( item => item.toUpperCase().substring(0, 1)).join(' ');
var str="stack overflow";

firstChar  = str.charAt(0);

secondChar = str.charAt(1);

在IE6+, FF, Chrome, safari测试。

你甚至可以使用切片切断所有其他字符:

x.slice(0, 1);