做eloquentJS练习很简单。切片不会从函数参数
中的数组返回正确的输出for column, text in enumerate(row[1:], 1):
tableWidget.setItem(rowNumber + 1, column, QTableWidgetItem(text))
答案 0 :(得分:2)
Array.prototype.slice()
不会改变调用它的数组,但会返回一个新数组。将此返回值分配给insertTab
,它可以正常工作:
console.log(swapArray([1, 2, 3, 4, 5, 6, 7]));
function swapArray(insertTab) {
console.log([0, 1, 2, 3, 4].slice(2, 4));
insertTab = insertTab.slice(2, 4);
return insertTab;
}

答案 1 :(得分:1)
console.log(swapArray([1,2,3,4,5,6,7]));
function swapArray(insertTab){
console.log([0, 1, 2, 3, 4].slice(2, 4));
insertTab = insertTab.slice(2, 4);
return insertTab;
}
<强> DEMO 强>
答案 2 :(得分:1)
好吧,如果您阅读了documentation,那么
slice()
方法将数组的一部分的浅表副本返回到从头到尾选择的新数组对象( end not included )。 原始数组不会被修改。
因此,在您的情况下,只需直接返回您想要的部分
function swapArray(insertTab) {
console.log([0, 1, 2, 3, 4].slice(2, 4)); // this work fine
return insertTab.slice(2, 4);
}