我正在做一个叫做“蛋白质翻译”的练习。你可以在这里看到https://exercism.io/my/solutions/c7e4d84bad424a5e80f5a86d1242c923的说明。
我的逻辑是:
我创建了一个数组(codonArr),它接受一个rna序列并将值拆分为3个字符(使用for循环)。即(AUGUCC)将是"AUG","UCC“
我创建了第二个数组(proteinArr)来存储匹配的密码子,并将它们转换为它们的蛋白质名称(使用for循环遍历codonArr,然后使用if else将密码子与蛋白质进行匹配)。也就是说,codonArr AUG,UUG将被用来创建proteinArr“蛋氨酸”,“亮氨酸”
然而,我没有得到我所期望的结果。
代码:Code snippet
发布于 2020-04-19 19:46:20
错误存在于您使用的if语句的逻辑中。当if语句包含像' and ',' or ','NOT‘这样的逻辑运算时,将计算这些运算符前后的所有部分,并且在Javascript中,将导致真或假。(请参阅mdn:truthy和mdn:falsy的详细信息)。
codonArri === 'UUU‘仅在变量codonArri的值等于'UUU’时为true,但静态字符串'UUC‘始终为true。实际上,您的elseif语句具有以下结果:
if(true || true)和if(false || true),将始终在if(true)中求值。
https://stackoverflow.com/questions/61274100
复制相似问题