你如何制作整个OWN语言编码器?我试过这个..(不起作用)

时间:2013-05-11 03:53:17

标签: javascript

我试图让它全部连接但没有任何工作..我对JavaScript很恐怖......它说它是'未定义'。我认为这是定义..

var convert = function (x) {
    alert(dxc(x));

    function dxc(m) {
        stg(m.charAt(0));
    }

    function stg(d) {
        if (d === "d") {
            d = "p";
        }
    }
};

var conversion = prompt("What do you want to translate?");
convert(conversion);

编辑:这只是为了整个事情的想法,我没有接近完成...

3 个答案:

答案 0 :(得分:3)

您忘记了return要返回的值

var convert = function(x) {
    alert(dxc(x));

    function dxc(m) {
        return stg(m.charAt(0));          
    }
    function stg(d) {
        if (d === "d") {
            d = "p";
        }
        return d;
    }
};

var conversion = prompt("What do you want to translate?");
convert(conversion);

答案 1 :(得分:2)

您的功能没有返回任何内容。

尝试:

var convert = function (x) {
    alert(dxc(x));

    function dxc(m) {
        return stg(m.charAt(0));
    }

    function stg(d) {
        if (d === "d") {
            d = "p";
        }

        return d;
    }
};

答案 2 :(得分:1)

d只是一个指向某个值的名称;当您执行d = "p"时,您正在更改d指向的内容,但您只更改 d; d(特别是m.charAt(0))的来源保持不变。

您必须手动返回修改后的字符串:

function dxc(m) {
    return stg(m.charAt(0)) + m.substring(1);
}

function stg(d) {
    if (d === "d") {
        return "p";
    }else{
        return d;
    }
}