【发布时间】:2020-09-29 12:11:25
【问题描述】:
我描述了我尝试做的事情: 我必须得到一个嵌套数组,这取决于输入。每个子数组必须是一对两个字符。对从基本对创建:AT,CG。 例如:输入'CGT'输出[['C','G'],['G','C'],['T','A']] 我试过这个:
function pairElement(str) {
let matched=str.match(/[A-Z]/g); //get array from str
let cookedArr=[]; //the final array
for(let i=0;i<matched.length;i++){ //create nested arr.
for(let j=0;j<3;j++){
switch(matched[i]){
case 'A':
cookedArr[i][j].push('A');
cookedArr[i][j].push('T');
break;
case 'T':
cookedArr[i][j].push('T');
cookedArr[i][j].push('A');
break;
case 'C':
cookedArr[i][j].push('C');
cookedArr[i][j].push('G');
break;
case 'G':
cookedArr[i][j].push('G');
cookedArr[i][j].push('C');}
}}}
pairElement("GCG");
它出现:TypeError: Cannot read property '0' of undefined 我不明白有什么问题,如果 switch 语句使用 '===' 比较?
Где ошибка, если оператор switch использует '===' сравнение?
【问题讨论】:
-
哪一行会抛出这个错误?您尝试过检查为什么它会被抛出?
标签: javascript arrays switch-statement