Javascript DNA配对,阵列
我是一个相对年轻的开发人员,对一些事情感到困惑 这是我的密码:Javascript DNA配对,阵列,javascript,arrays,Javascript,Arrays,我是一个相对年轻的开发人员,对一些事情感到困惑 这是我的密码: function pairElement(str) { var arr = []; var pairs = [ ["A","T"], ["T","A"], ["C","G"], ["G","C"] ]; var spl = str.split(""); for(var i = 0; i<pairs.length; i++){
function pairElement(str) {
var arr = [];
var pairs = [
["A","T"],
["T","A"],
["C","G"],
["G","C"]
];
var spl = str.split("");
for(var i = 0; i<pairs.length; i++){
for(var j= 0; j<spl.length; j++){
if(pairs[i][0] == spl[j]){
arr.push(pairs[i]);
}
}
}
return arr;
}
pairElement("ATCGA");
功能配对(str){
var-arr=[];
变量对=[
[“A”,“T”],
[“T”,“A”],
[“C”,“G”],
[“G”、“C”]
];
var spl=str.split(“”);
对于(var i=0;i来说,这只是一个建议,用于缩短对数组的访问时间。您可以使用一个对象并使用字母作为键
功能配对(str){
变量对={
A:[“A”,“T”],
T:[“T”,“A”],
C:[“C”,“G”],
G:[“G”,“C”]
};
返回str.split(“”).map(函数(a){
返回对[a];
});
}
console.log(pairement(“ATCGA”);
只是一个建议,用于缩短对数组的访问时间。您可以使用对象并使用字母作为键
功能配对(str){
变量对={
A:[“A”,“T”],
T:[“T”,“A”],
C:[“C”,“G”],
G:[“G”,“C”]
};
返回str.split(“”).map(函数(a){
返回对[a];
});
}
console.log(pairement(“ATCGA”);
你能描述一下你函数的预期行为吗?如果用pairement(“AT”)调用它,我会得到对,TA,但是如果用pairement(“TA”)调用它;我得到了相同的结果..好的,我想我得到了。如果我没有弄错的话,结果的顺序是基于对数组的顺序,因为外部for
循环在该数组上迭代,而不是在输入字符串上。我想你可以简单地反转两个for循环,得到预期的结果更正错误真的,完成了!非常感谢!你能描述一下你函数的预期行为吗?如果用pairement(“AT”)调用它,我在,TA得到对,但是如果用pairement(“TA”)调用它;我得到了相同的结果..好的,我想我得到了。如果我没有弄错的话,结果的顺序是基于对数组的顺序,因为外部for
循环在该数组上迭代,而不是在输入字符串上。我想你可以简单地反转两个for循环,得到预期的结果更正错误真的,完成了!非常感谢!谢谢..我尝试过使用map()函数,但对我来说更重要的是理解“事物如何工作”:)谢谢..我尝试过使用map()函数,但对我来说更重要的是理解“事物如何工作”: