Как получить первый символ строки?

У меня есть строка, и мне нужно получить ее первый символ.

var x = 'somestring';
alert(x[0]); //in ie7 returns undefined

Как я могу исправить свой код?

Ответ 1

Вы хотите charAt.

var x = 'some string';
alert(x.charAt(0)); // alerts 's'

Ответ 2

В JavaScript вы можете сделать это:

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

Ответ 3

Вы можете использовать любой из них.

Между ними есть небольшая разница. Так что будьте осторожны при использовании его в условном выражении.

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


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

Ответ 4

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

Ответ 5

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

Метод charAt() позволяет указать позицию требуемого символа.

То, что вы пытались сделать, это получить символ в позиции массива "x", который не определяется как X не является массивом.

Ответ 6

Пример всего метода

Я добавил расчет времени, между ними нет большой разницы, самый длинный расчет всегда выполняется первым.

Первый: string.charAt(index)

Вернуть символ по индексу index

var str = "Stack overflow";

console.time("charat");

console.log(str.charAt(0));

console.timeEnd("charat");

Ответ 7

Вы даже можете использовать slice для отключения всех других символов:

x.slice(0, 1);

Ответ 8

var str="stack overflow";

firstChar  = str.charAt(0);

secondChar = str.charAt(1);

Протестировано в IE6 +, FF, Chrome, сафари.

Ответ 9

Попробуйте также:

x.substr(0, 1);

Ответ 10

x.substring(0,1)

Подробнее

substring(start, end) извлекает символы из строки, между двумя индексами "start" и "end", not, включая "конец".

Специальные примечания

  • Если "start" больше, чем "end", этот метод будет заменять два аргумента, что означает str.substring(1, 4) == str.substring(4, 1).
  • Если "начало" или "конец" меньше 0, оно обрабатывается так, как если бы оно было 0.

Ответ 11

в JQuery вы можете использовать: в классе для Select Option:

$('.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)

Ответ 12

в 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

Ответ 13

Простой метод будет

const z ="sdsdsd"

console.log(z[0])    // 's'

и использовать pollyfills

Ответ 14

Похоже, я опоздал на вечеринку, но попробуйте следующее решение, которое я лично нашел лучшее решение:

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

В выходных данных должно отображаться предупреждение со следующими значениями: "Т" "Е"