猿问

关于函数return的值的问题

function arrchange(arr){    var btn = document.getElementById("button");
    btn.onclick = function(){
        arr = [1,2,3];
    }    return arr;
}function runCode(){    var arr = [];    var myArr = arrchange(arr);    console.log(myArr);
}

runCode();

console.log显示空数组[]。
我想实现一个效果:
把一个空数组arr传入arrchange()函数;
再将arrchange(arr)赋值给一个变量myArr;
btn.onclick的时候,arrchange(arr)对arr进行处理,返回新的arr。不然就不处理,返回原有的arr。
--当然实际应用中arr会动态创建,所以没办法直接赋值,只能抽象化。
该怎么写呢?
其实问题就是怎么把函数当成一个值来返回,但是要再其中添加一个click功能,也许用闭包可以解决?


倚天杖
浏览 465回答 1
1回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答