Как мне преобразовать строку в объект - PullRequest
0 голосов
/ 05 февраля 2019

Я новичок в программировании, и я хотел развить свои навыки, работая над небольшим проектом.

Я создаю приложение для судоку с использованием HTML / JavaScript.У меня есть большое количество (81) элементов 'div' в HTML, и я хочу назначить им контент, изменив их 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 голосов
/ 05 февраля 2019

вы пробовали eval ()

var stringval='[1,2,3]';
var value=eval(stringval);
console.log(value);//=>[1, 2, 3]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...