在动态定义的Javascript数组中存储值?

xn *_* dx 2 javascript arrays jquery

我正在编写一个脚本,将元素的ID从'note-1192'格式中分离出来(例如)并将其放入数组中:

    var timers = new Array();

    $('.notes').keyup(function(){

        var timerVariable = $(this).attr('id').split("-");
        timerVariable = timerVariable[0];
        timerVariable = timerVariable.replace('note', '');
        alert(timerVariable); // 1192

        timers[timerVariable] = timerVariable;
        alert(timers.join('\n')); // blank

    });
Run Code Online (Sandbox Code Playgroud)

它根本没有将变量存储到数组中,当我提醒'timers array'它是空的时候,但是当我提醒'timerVariable'时它出来就好了.

任何建议都会非常受欢迎,谢谢!

Jar*_*Par 5

问题是您正在使用的索引语法是在数组对象上设置命名属性而不添加元素.要向数组添加元素,请使用push

timers.push(timerVariable);
Run Code Online (Sandbox Code Playgroud)

  • 数组索引是字符串,而不是数字.`a ["1"]`是做'a [1]`的实际结果. (2认同)