如何将字符串转换为对象

时间:2019-02-05 02:28:26

标签: javascript html string object

我是编程的新手,我想通过一个小项目来发展自己的技能。

我正在使用HTML / JavaScript创建Sudoku应用程序。我在HTML中有大量(81)'div'元素,并且我想通过更改它们的innerHTML为其分配内容。使用这两个for循环,我遍历了所有81个变量,并在“ x”中重新创建了它们的名称,然后将其传递给assign_cell()以汇编代码。

puzzle_inc拥有拼图本身(9..47.8.2..821 ..等;“。”表示空单元格),我使用计数器功能逐个浏览其字符,并将其分配给每个' div”。

经过大量测试和搜索,我发现我的问题是x为'string'类型,assign_cell()中的代码不起作用。在这种情况下,x始终等于“ c01”。

我一直在尝试将x转换为对象类型。我曾尝试使用JSON.parse()解决此问题,但可能由于我对该领域缺乏知识而无法成功。

我不确定该如何处理,但是任何帮助将不胜感激。

谢谢。

function assign_cell(flag, arr1, arr2) {
    if(flag === 1) {
        arr1.innerHTML = puzzle_inc[arr2];
    } else if(flag === 2) {
        arr1.innerHTML = null;
    } else {
        alert("Error in function assign_cell()");
    }   
}

for(var i = 0; i < 9; i++){
    for(var k = 0; k < 9; k++){
        var a = counter();
        var x = "c"+i+k;
        if(puzzle_inc[a] != '.') {
            assign_cell(1, x, a);
        } else {
            assign_cell(2, x, a);
        }
    }
}

编辑:要求我提供完整的代码,以更好地帮助回答我的问题。请在下面找到它。谢谢您的回答!

PHP JS

1 个答案:

答案 0 :(得分:1)

您尝试过eval()

var stringval='[1,2,3]';
var value=eval(stringval);
console.log(value);//=>[1, 2, 3]