推送对象后,数组变为未定义

时间:2014-10-23 12:05:16

标签: javascript arrays

我有一个我用以下方式定义的JavaScript数组:

var img_files = {};

这很好用,当我说console.log(img_files)时,我得到了很好的回应。

但是,当我执行以下操作时:

        console.log(data.key);
        console.log(img_files);
        img_files.push({
            path: data.key
        });
        console.log(img_files);

我明白了:

811ab0b1-24c3-4274-b59c-5feb80e10130.jpg 
Object {} 
Uncaught TypeError: undefined is not a function 

所以在我推动对象之后,我得到了一个未定义的数组。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:4)

{}不是数组。这是一个对象。对象未定义push。这就是错误显示的原因。

[]是javascript(几乎所有编程语言中)的数组。

var img_files = [];