Javascript 尝试创建按日期排序的数组时,无法设置未定义错误的“something”属性。

Javascript 尝试创建按日期排序的数组时,无法设置未定义错误的“something”属性。,javascript,angularjs,firebase,Javascript,Angularjs,Firebase,我发布了一个相关的问题,@Kato帮我解答了一个问题。我试图实现他的答案,但得到一个错误,不能设置未定义的属性 我制作了一份尽可能详细的plnkr: 您需要初始化列表[周号]: 您需要初始化列表[周号]: 出现该错误的原因是,您试图将属性添加到列表[week_num],而该属性不是对象 你可以 list[week_number] = list[week_number] || {}; list[week_number][week_day] = data; 或 出现该错误的原因是,您试图将属性添加

我发布了一个相关的问题,@Kato帮我解答了一个问题。我试图实现他的答案,但得到一个错误,不能设置未定义的属性

我制作了一份尽可能详细的plnkr:

您需要初始化列表[周号]:

您需要初始化列表[周号]:


出现该错误的原因是,您试图将属性添加到列表[week_num],而该属性不是对象

你可以

list[week_number] = list[week_number] || {};
list[week_number][week_day] = data;


出现该错误的原因是,您试图将属性添加到列表[week_num],而该属性不是对象

你可以

list[week_number] = list[week_number] || {};
list[week_number][week_day] = data;

list[week_number] = list[week_number] || {};
list[week_number][week_day] = data;
if(!angular.isObject(list[week_number]) {
    list[week_number] = {};
}
list[week_number][week_day] = data;