javascript函数参数传递问题。

javascript进阶篇 9-22 编程练习

这是参考代码里的删除<tr>标签调用的函数:

function deleteRow(obj){

   var tbody = document.getElementById('table').lastChild;  

var tr = obj.parentNode.parentNode;

tbody.removeChild(tr);

}

函数里的参数obj该怎么理解?

从“var tr = obj.parentNode.parentNode;”反推,这一条代码里的obj相当于是<td>标签下的一个文本节点,类似“王小明”、“刘小芳”等等这样的文本节点。

为什么这里在没有说明的情况下就可以把参数obj默认为一个文本节点?


为什么“var tr = obj.parentNode.parentNode;”

不能用  var tr = obj.parentNode;

或者用  var tr = obj;替换?


kx00012kx
浏览 1289回答 1
1回答

回夢

你先理解以下什么是函数。我给你写个简单的例子。function add(a,b){return a+b;} 好了,我函数定义好了,但是你知道a和b是什么吗?我函数摆在这里,我没有去调用,是没有意义的。只有当我使用add(1,2);的时候 这个函数才会触发,那么a=1,b=2;函数执行完毕得到结果3.这样你能理解吗?函数的那个obj只是一个实参,传递过来的是什么还需要看传递者。你可以去看看形参和实参的解释。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript