我有一个字符串,我需要得到它的第一个字符。
var x = 'somestring';
alert(x[0]); //in ie7 returns undefined
如何修复我的代码?
答案 0 :(得分:932)
你想要的是charAt
。
var x = 'some string';
alert(x.charAt(0)); // alerts 's'
答案 1 :(得分:131)
在JavaScript中,您可以这样做:
alert(x.substring(0,1));
答案 2 :(得分:24)
x.substring(0,1)
答案 3 :(得分:16)
var x = "somestring"
alert(x.charAt(0));
charAt()方法允许您指定所需字符的位置。
您要做的是将字符放在数组“x”的位置,该数组未定义为X不是数组。
答案 4 :(得分:14)
您甚至可以使用slice
来截断所有其他字符:
x.slice(0, 1);
答案 5 :(得分:13)
所有方法的例子
我添加了一个时间计算,它们之间没有太大区别,最长的计算始终是第一次执行。
首先:string.charAt(index)
在指数
处返回结果index
var str = "Stack overflow";
console.time("charat");
console.log(str.charAt(0));
console.timeEnd("charat");
第二次:string.substring(start,length);
返回从索引
start
开始的字符串中的子字符串,并在长度length
后停止
在这里,您只需要第一个结果:start = 0
和length = 1
var str = "Stack overflow";
console.time("substring");
console.log(str.substring(0,1));
console.timeEnd("substring");
替代:string[index]
字符串是一个caract数组。所以你可以得到像阵列的第一个单元格那样的第一个结构。
在字符串
的索引index
处返回caract
var str = "Stack overflow";
console.time("array");
console.log(str[0]);
console.timeEnd("array");
答案 6 :(得分:7)
var str="stack overflow";
firstChar = str.charAt(0);
secondChar = str.charAt(1);
经过测试 IE6 + , FF , Chrome , safari 。
答案 7 :(得分:2)
x.substring(0,1)
substring(start, end)
从字符串中提取字符,在2个索引之间" start"和"结束",不包括"结束"本身。
答案 8 :(得分:1)
您可以通过以下方式使用:
'Hello Mr Been'.split(' ').map( item => item.toUpperCase().substring(0, 1)).join(' ');
答案 9 :(得分:0)
charAt()
如果它有父属性
不起作用
前parent.child.chartAt(0)
使用 parent.child.slice(0, 1)
答案 10 :(得分:0)
您也可以使用:
var x = "somestring";
console.log(x.split("")[0]); // output "s"
这应该适用于较旧的浏览器。
答案 11 :(得分:0)
使用jQuery:
#include <stdio.h>
int main(void)
{
char str[] = "string test *******************************************************************************************";
int length = 0;
for (int i = 0; str[i] != '\0'; i++)
length++;
fprintf(stdout, "str:\n%s\n\n", str);
fprintf(stdout, "length = %d\n", length);
return 0;
}
答案 12 :(得分:0)
已经10年了,RegExp
却没有答案。
var x = 'somestring';
console.log(x.match(/./)[0]);
答案 13 :(得分:0)
var string = "Hello World";
console.log(charAt(0));
charAt(0)是JavaScript方法,它将基于索引返回值,这里0是第一个字母的索引。
答案 14 :(得分:0)
看起来我参加聚会晚了,但是请尝试以下我个人认为是最佳解决方案的解决方案:
var x = "testing sub string"
alert(x[0]);
alert(x[1]);
输出应显示具有以下值的警报: “ t” “ e”
答案 15 :(得分:0)
简单方法为
const z ="sdsdsd"
console.log(z[0]) // 's'
并使用pollyfills
答案 16 :(得分:0)
在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
答案 17 :(得分: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)