javascript函数传值问题

代码地址,注释125行出错,每次结果一样

https://github.com/bigggge/Js...

大概类似于下面的代码

function handleData(arg) {
console.log(arg);//这里正常,arg等于传进来的值
var options={
{
     title: {
        text: '大规模散点图'
    },
    //省略
    toolbox: {
        feature: {
            myTool2: {
                show: true,
                title: '自定义扩展方法',
                icon: 'image://http://echarts.baidu.com/images/favicon.png',
                onclick: function (){
                      console.log(arg);//这里不正常,arg不等于传进来的值,始终是一个固定值,为什么?
                }
            }
        }
    }
}
myChart.setOption(option);
}

handleData(array);
阅读 3.5k
3 个回答

关于onclick只能获取一个值,可能可以用闭包解决,因为条件原因,我无法进行测试,你可以借鉴一下这篇文章:链接

var options={
{

这里下面多了一个大括号,
myChart.setOption(option);这里我觉得的话,你应该要传的参数是上面的var options而不是不知道哪来的option,少了一个s,然后我自己下了个Echarts把修改的放进去随便穿了个参数试了试没问题

onclick: function (){
                      console.log(arg);//这里不正常,arg不等于传进来的值,始终是一个固定值,为什么?
                }

这里点击之后控制台打印的是传进去的arg。

应该是期望采用闭包,没有实现正确。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏