Я пытаюсь передать некоторые данные функции, которая использует эти аргументы как идентификаторы для многомерного массива, а затем возвращает значение, жестко закодированное в этот массив. Я не уверен, что я делаю неправильно, но что-то ломается.Javascript function and array problem
Я могу получить предупреждение(), чтобы пометить, прежде чем назначать значения массива, но, похоже, он умирает в этот момент. Любая помощь приветствуется.
// Get Column A's number
var a1 = Number($('#p-a').attr("numb"));
// Get Column B's number
var b1 = Number($('#p-b').attr("numb"));
// Get status for column A
var a_status = $('#p-a').attr("status");
// Get status for column A
var b_status = $('#p-b').attr("status");
// If same, status="s" else, status="i"
var status = "";
if(a_status == b_status) { status = "s"; }else{ status = "o"; }
// Get the value of the numbers + status
var a = this_function(a1, b1, status, "2");
// Update the status div
$('#status').html(a);
function this_function(a1, a2, s, p)
{
this_array = array();
this_array['1']['1']['1']['1'] = "10";
this_array['1']['1']['1']['2'] = "20";
this_array['1']['2']['1']['1'] = "40";
this_array['1']['2']['1']['2'] = "60";
//
return this_array[a1][a2][s][p];
}
что делает возвращающий массив? Кроме того, это не похоже на массив для меня, поскольку он использует букву 'o' в качестве индекса вместо 0 – glebm
a1 =" 1 " b1 =" 2 " a_status и b_status =" ok " –
и для массив, эти «o» были заменены на 1/0, отредактировав сообщение, чтобы отразить это. –