'for loop'和可能的语法错误

时间:2013-08-12 00:31:42

标签: javascript jquery syntax syntax-error

这是我目前的javascript。我知道它在我添加'for循环'之前一直有效。 for循环的要点是切换字母。目前看,它检查3组是否等于一个字母。我稍后会解决这个问题,但我知道必定存在语法错误,因为当鼠标移过它们时按钮不会褪色。我知道这是一个愚蠢的问题,当我看到错误时我会踢自己,但我很累,现在找不到我的生活。另外,这个for循环是一种改变字母的有效方式吗?这是将数组值设置为新字母的正确方法吗?

这是script.js:

    $(document).ready(function() {
    $('#button_translate').mouseenter(function() {
        $('#button_translate').fadeTo('fast', 1);
    });
    $('#button_translate').mouseleave(function() {
        $('#button_translate').fadeTo('fast', 0.7);
    });
    $('#button_clear').mouseenter(function() {
        $('#button_clear').fadeTo('fast', 1);
    });
    $('#button_clear').mouseleave(function() {
        $('#button_clear').fadeTo('fast', 0.7);
    });
    $('#button_translate').click(function() {
        var dna = $('input[name=dna]').val();
        var dna = dna.toUpperCase();
        function allBases(text) {  
            var bases = /^[ACGT]+$/;  
            if(text.match(bases)) {  
                var arr = text.match(/.{1,1}/g);
                /*document.write(arr + " is a DNA sequence.");*/
                for (var i = 0; i < (dna.length); i++) {
                    if (arr[i]==='A') {
                        arr[i]='U'
                    }else if (arr[i]==='C') {
                        arr[i]='G'
                    }else if (arr[i]==='G') {
                        arr[i]='C'
                    }else if (arr[i]==='T') {
                        arr[i]='U'
                    }else{
                        document.write(dna + " is not a real DNA sequence. Error Code 2");
                    }
                }
                document.write(dna + " is the translated mRNA strand!");
            }else{
                document.write(dna + " is not a real DNA sequence.");
            }  
        }

        allBases(dna);

    });
});

2 个答案:

答案 0 :(得分:2)

for (var i=0; i>=((dna.length) / 3); i++) {

你可能希望循环条件小于dna.length

for (var i = 0; i < (dna.length/3); i++) {

答案 1 :(得分:0)

你在for循环中有一个未闭合的(

for (var i=0; i>=(dna.length) / 3); i++) { // extra ( in i>=((dna.length) / 3)