Respuestas:
Lo que queremos es charAt
.
var x = 'some string';
alert(x.charAt(0)); // alerts 's'
x.charAt()
también devolverá el primer carácter como si no se pasara ningún índice a este método, lo asumirá al 0
.
"👍".charAt(0)
devuelve "\ud83d"
, "café".charAt(3)
devuelve e
y suelta el acento, etc. stackoverflow.com/questions/38345372/… tiene información y una buena alternativa (use una biblioteca)
En JavaScript puedes hacer esto:
const x = 'some string';
console.log(x.substring(0, 1));
x.slice(0,1)
es más corto. Y para obtener el último personaje simplemente use:x.slice(-1)
Puedes usar cualquiera de estos.
Hay una pequeña diferencia entre todos estos, así que tenga cuidado al usarlo en una declaración condicional.
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
const x = 'some string';
console.log(x.substring(0, 1));
Ejemplo de todo método
Primero :string.charAt(index)
Devuelve la caractra en el indice
index
var str = "Stack overflow";
console.log(str.charAt(0));
Segundo :string.substring(start,length);
Devuelve la subcadena en la cadena que comienza en el índice
start
y se detiene después de la longitudlength
Aquí solo quieres la primera caract así: start = 0
ylength = 1
var str = "Stack overflow";
console.log(str.substring(0,1));
Alternativa :string[index]
Una cadena es una matriz de caract. Entonces puede obtener la primera caract como la primera celda de una matriz.
Devuelve la caractra en el índice
index
de la cadena
var str = "Stack overflow";
console.log(str[0]);
Incluso puede usar slice
para cortar todos los demás caracteres:
x.slice(0, 1);
var str="stack overflow";
firstChar = str.charAt(0);
secondChar = str.charAt(1);
Probado en IE6 + , FF , Chrome , safari .
indexOf
que no funciona en IE8 y eso es bastante importante para mí. De hecho, comencé a buscar compatibilidad con charAt de Google hasta que vi esta respuesta aquí abajo.
Prueba esto también:
x.substr(0, 1);
x.substring(0,1)
substring(start, end)
extrae los caracteres de una cadena, entre los 2 índices "inicio" y "fin", sin incluir el "fin" en sí.
en JQuery puede usar: en clase para Seleccionar opción:
$('.className').each(function(){
className.push($("option:selected",this).val().substr(1));
});
en clase para texto Valor:
$('.className').each(function(){
className.push($(this).val().substr(1));
});
en ID para texto Valor:
$("#id").val().substr(1)
en Nodejs puedes usar 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 string = "Hello World";
console.log(charAt(0));
El charAt (0) es un método de JavaScript, devolverá el valor basado en el índice, aquí 0 es el índice de la primera letra.