如何使用javascript / jQuery以明文形式输出数组的内容

时间:2014-09-21 09:58:55

标签: javascript jquery html arrays plaintext

我如何获取数组,通过向前移动每个数组编号来修改它,如果i大于26而不是减去26,然后以纯文本显示数组。

http://jsfiddle.net/clarinetking/kLy83oxj/4/

var alphabet = [a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z];
var text;
$('#assign').click( function() {
    text = $('#Input').val();
    num = $('#Number').val();
});

$('#rotate').click( function() {
    for(i=0;i<alphabet.length;i++) {
        alphabet[i] = alphabet[i+num];
        if (alphabet[i]>26){
            i=i-26;
        }
    }
});
$('#solve').click( function() {
    alphabet.toString();
        $('#Output').append(alphabet);
});

有点难以解释。抱歉。它基本上是一个凯撒密码的情况,即想象一个字母轮。顺时针方向移动方向盘,每个字母在字母表中都有一个新位置。我正试图扭转这个过程。

很多人问为什么我只使用html。简短的回答,除了一些帕斯卡,我才明白这一点:)

2 个答案:

答案 0 :(得分:2)

我不确定我是否理解你的意思但是如果缺少功能我可以添加它来检查这个小提琴。我做的是当你点击旋转它会把第一个字母放在最后一个部分。尝试单击然后解决以查看输出。

http://jsfiddle.net/kLy83oxj/6/

var alphabet = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'];
var text;
jQuery(document).ready(function(){
$('#assign').click( function() {
    text = $('#Input').val();
    num = $('#Number').val();
});

$('#rotate').click( function() {
    var first = alphabet[0];
    alphabet.splice(0,1);
    alphabet.push(first);
});
$('#solve').click( function() {
        $('#Output').html(alphabet.join(','));
    });
});

要了解有关javascript数组的更多信息,请从此处http://www.w3schools.com/js/js_arrays.asp

开始

答案 1 :(得分:2)

您的代码中有2个语法错误:

var alphabet = [a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z];

应该是

var alphabet = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'];

因为javascript中的所有字符串都需要包含在&#39;或&#34;,否则它们将被视为变量。然后你的第二个语法错误:

$('#solve').click( function() {
    alphabet.toString();
        $('#Output').append(alphabet);
    });
});

应该是:

$('#solve').click( function() {
    alphabet.toString();

    $('#Output').append(alphabet);
});

(你关闭了一对多功能)