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

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

如何修复我的代码?


Const x = 'some string'; console.log (x。substring (0,1));


charAt会给出错误的Unicode结果。使用Array.from:

Array.from('some string')[0];

在JavaScript中,你可以这样做:

Const x = 'some string'; console.log (x。substring (0,1));


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

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

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


var str="stack overflow";

firstChar  = str.charAt(0);

secondChar = str.charAt(1);

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


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

x.slice(0, 1);

你可以用任何一个。

所有这些都有一点不同 所以在条件语句中使用时要小心。

var string = "hello world"; console.log(string.slice(0,1)); //o/p:- h console.log(string.charAt(0)); //o/p:- h console.log(string.substring(0,1)); //o/p:- h console.log(string.substr(0,1)); //o/p:- h console.log(string[0]); //o/p:- h console.log(string.at(0)); //o/p:- h var string = ""; console.log(string.slice(0,1)); //o/p:- (an empty string) console.log(string.charAt(0)); //o/p:- (an empty string) console.log(string.substring(0,1)); //o/p:- (an empty string) console.log(string.substr(0,1)); //o/p:- (an empty string) console.log(string[0]); //o/p:- undefined console.log(string.at(0)); //o/p:- undefined


你也可以试试这个:

x.substr(0, 1);

X.s ubstring (0, 1)

细节

Substring (start, end)从字符串中提取出两个索引"start"和"end"之间的字符,不包括"end"本身。

特别指出

如果"start"大于"end",该方法将交换两个参数,即str.substring(1,4) == str.substring(4,1)。 如果“start”或“end”小于0,则将其视为0。


所有方法示例

第一个:string.charAt(index)

返回索引index处的caract

var str = “堆栈溢出”; console.log(str.charAt(0));

第二个:string.substring(start,length);

返回字符串中从索引start开始并在长度length之后停止的子字符串

这里你只需要第一个caract: start = 0 and length = 1

var str = “堆栈溢出”; console.log(str.substring(0,1));

string[index]

字符串是一个caract数组。所以你可以得到第一个caract就像数组的第一个单元格。

返回字符串的下标处的caract

var str = “堆栈溢出”; console.log(str[0]);


在JQuery中你可以使用: 在类中选择选项:

$('.className').each(function(){
    className.push($("option:selected",this).val().substr(1));
});

值:

$('.className').each(function(){
    className.push($(this).val().substr(1));
});

在ID为文本值:

$("#id").val().substr(1)

在Nodejs中你可以使用Buffer:

let str = "hello world"
let buffer = Buffer.alloc(2, str) // replace 2 by 1 for the first char
console.log(buffer.toString('utf-8')) // display he
console.log(buffer.toString('utf-8').length) // display 2

看起来我迟到了,但试试下面的解决方案,我个人认为最好的解决方案:

var x = "testing sub string"
alert(x[0]);
alert(x[1]);

输出应该显示警报与以下值: “t” “e”


你可以这样用:

'Hello Mr Been'.split(' ').map( item => item.toUpperCase().substring(0, 1)).join(' ');

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

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


你也可以用as:

var x = "somestring";

console.log(x.split("")[0]); // output "s"

这应该适用于旧的浏览器。


如果charAt()有父道具,则不工作 前女友parent.child.chartAt (0) 使用parent.child。片(0,1)


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

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

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

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

对于任何字符串str = "Hello World"

str.split(' ')。map(item => item. touppercase()。substring(0,1))。加入(' ');

输出:H W


你可以使用以下任何一种:

let userEmail = "email";
console.log(userEmail[0]); // e
console.log(userEmail.charAt(0)); // e
console.log(userEmail.slice(0, 1)); // e
console.log(userEmail.substring(0, 1)); // e
console.log(userEmail.substr(0, 1)); // e
console.log(userEmail.split("", 1).toString()); // e
console.log(userEmail.match(/./)[0]); // e

在Javascript中有很多方法可以找到字符串的第一个字符。我认为最简单的方法是string.charAt()方法。此方法以索引号作为参数并返回索引值。如果你没有给出任何参数,默认情况下它会返回字符串的第一个字符。

const str = "孟加拉国"; const firstCharacter = str.charAt(0); const secondCharacter = str.charAt(1); console.log (firstCharacter) console.log (secondCharacter)


已经12年了,只有一个开发人员提到了regexp,但它是一种更简单的方法:

const str = 'string';

str.match(/\w/); // >> s

它将返回给定字符串中的第一个字符类单词。