Posted in Javascript onFebruary 08, 2014
正常的来说,传递参数大概都是这么写:
var numParameter = 123; function sendParameter() { getParameter(numParameter ); } function getParameter(sendNum) { alert(sendNum); }
很简单的A方法调用B方法并传参。
但是,如果B方法的参数不是固定的,可能根据不同的情况,需要不同的参数,可以这么写:
var txtParameter1 = "123"; var txtParameter2 = "234"; var txtParameter3 = "345"; var txtSendParameter = ""; var flag = 0; function sendParameter1() { flag = 1; txtSendParameter = txtParameter1 + ";" + txtParameter2; getParameter(); } function sendParameter2() { flag = 2; txtSendParameter = txtParameter2 + ";" + txtParameter3; getParameter(); } function getParameter() { if(1==flag) { //goto functionC(txtSendParameter) } else if(2==flag) { //goto functionD(txtSendParameter) } else { return; } }
那么能不能不使用全局变量来传值:
var txtParameter1 = "123"; var txtParameter2 = "234"; var txtParameter3 = "345"; function sendParameter1() { var txtSendParameter = "1" + txtParameter1 + ";" + txtParameter2; getParameter(txtSendParameter); } function sendParameter2() { var txtSendParameter = "2" + txtParameter2 + ";" + txtParameter3; getParameter(txtSendParameter); } function getParameter() { switch(arguments[0]) { case "1": //goto functionC(arguments); break; case "2": //goto functionD(arguments); break; default: //goto functionE(arguments); } }
相对的来说arguments是一个很灵活的对象,虽然不是array,但是可以和array一样使用下标取值,虽然有点生僻,但是还是很好用。
<pre code_snippet_id="179244" snippet_file_name="blog_20140207_4_1482200" name="code" class="javascript"><pre code_snippet_id="179244" snippet_file_name="blog_20140207_4_1482200"></pre> <pre></pre> <pre></pre> <pre></pre> <pre></pre> <pre></pre> </pre>
JS的参数传递示例介绍
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@