Javascript 从每个数组元素中提取第一个字符不需要';行不通

Javascript 从每个数组元素中提取第一个字符不需要';行不通,javascript,arrays,slice,Javascript,Arrays,Slice,我试图从Javascript中的每个数组元素中提取第一个字符,因此我最终提取了1、4、7、2、5和8,但我一直得到“extractElement不是函数”我做错了什么 var characterArray = ['123','456','789','234','567','890']; var extractElement; var extractSlicedCharacter; function extractEachFirstNumber(){ for(counter = 0; c

我试图从Javascript中的每个数组元素中提取第一个字符,因此我最终提取了1、4、7、2、5和8,但我一直得到“extractElement不是函数”我做错了什么

var characterArray = ['123','456','789','234','567','890'];

var extractElement;
var extractSlicedCharacter;

function extractEachFirstNumber(){
   for(counter = 0; counter <= characterArray.length; counter++){
      extractElement = characterArray[counter];
      extractSlicedCharacter = extractElement.slice(0,1);
   }
}
var characterArray=['123'、'456'、'789'、'234'、'567'、'890'];
提取元素;
变量提取;数据特征;
函数extractEachFirstNumber(){

对于(counter=0;counter它对我来说很好,除了您应该从
@depperm-answer更改您的循环逻辑之外,应该可以解决这个问题

另一种可能是

var outputArray = [];
characterArray.forEach( function(element){
   outputArray.push( element.charAt(0) );
} );    
console.log( outputArray );

Slice返回一个数组,而不是单个字符。您应该只使用charAt

var characterArray = ['123','456','789','234','567','890'];

var extractElement;
var extractSlicedCharacter;

function extractEachFirstNumber(){
   for(counter = 0; counter <= characterArray.length; counter++){
      extractElement = characterArray[counter];
alert(extractElement.charAt(1));
//extractSlicedCharacter = extractElement.charAt(1);

   }
}
var characterArray=['123'、'456'、'789'、'234'、'567'、'890'];
提取元素;
变量提取;数据特征;
函数extractEachFirstNumber(){

对于(counter=0;counter您也可以通过方便地使用该方法执行以下操作:


使用
而不是切片,您可以使用characterArray[0][0]、characterArray[1][0]等等…或者只需将
extractSlicedCharacter=extractElement.slice(0,1);
替换为
extractSlicedCharacter.push(extractElement.slice(0,1));
(请确保将
extractSlicedCharacter
定义为数组)
result = characterArray.map(function(el) {return el[0]})
//=> [ '1', '4', '7', '2', '5', '8' ]