问答详情
源自:9-22 编程练习

删除上this的问题

     function dele(obj) {

             var del1=obj.parentNode.parentNode;

             del1.parentNode.removeChild(del1);

     }

为什么不能直接把函数里的obj换成this 必须要传参this才行


提问者:Rfan_ 2019-06-20 00:52

个回答

  • 林渊
    2019-06-21 11:57:42

    1. obj 是函数定义的时用到的形参,函数内的代码块用到了这个参数,你可以理解成变量名,可以任意命名

    2. 定义函数用到了几个形参,该函数被实调用的时候也必须传入几个实参

    3. onClick = dele(this),this此时是指向的是点击事件对应的那一个a标签

    4. 可以思考一下,如果不传this,如何才能找到被点击的那一个a标签;传入了 this,此时的 this 在这里就是指向了该点击对象,也就为你找到了被点击的那一个标签