JS的参数传递示例介绍

(编辑:jimmy 日期: 2024/10/15 浏览:2)

正常的来说,传递参数大概都是这么写:
复制代码 代码如下:
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>
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?