为什么在回调console.logs结果时result = array [0]或1而不是array [1]或2?
function test(array, callback) {
var startingIndex = 0;
var result = array[startingIndex];
startingIndex++;
callback(result);
}
test([1, 2, 3], function(result) {
console.log(result);
});
答案 0 :(得分:2)
这是因为您在分配startingIndex
变量之前递增result
变量。
你有:
var result = array[startingIndex];
startingIndex++;
交换这两行,您将得到预期的结果:
startingIndex++;
var result = array[startingIndex];