JS的参数传递示例介绍

  正常的来说,传递参数大概都是这么写:

  

复制代码 代码如下:

  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>