2 回答

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個贊
tasks長度不一致應(yīng)該是打印、賦值順序的問題
console.log(ge);
ge.loadTasks(tasks);
另外,你上述代碼調(diào)用ge.loadTasks(tasks);,被賦值的只是ge實(shí)例的tasks,構(gòu)造函數(shù)Generator的tasks還是[]。
如果想讓Generator構(gòu)造函數(shù)所創(chuàng)建的對象擁有tasks值,應(yīng)該將tasks列表放到構(gòu)造函數(shù)里
function Generator() {
this.tasks = [
{id: 1, name: '張三'}, {id: 2, name: '李四'}, {id: 3, name: '王五'}
];
}

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超3個贊
你的代碼和調(diào)試都有邏輯問題的
Generator.prototype.loadTasks = function(tasks) {
var self = this;
for(var i = 0; len = tasks.length, i < len; i++) {
self.tasks.push(tasks[i]);
}
}
后面如果沒有在實(shí)例中調(diào)用loadTasks方法(且實(shí)參是全局的tasks變量),則tasks屬性是應(yīng)該為[]啊
添加回答
舉報