如何在javascript中通过引用传递参数

时间:2013-08-30 12:28:16

标签: javascript jquery html jquery-ui

问题陈述:如何在javascript函数中返回修改后的状态时返回修改后的参数值

示例代码:

var inputHtml = 'hello';

if(IsContentChanged(inputHtml))
    alert(inputHtml);
else
    alert('No content changed');

function IsContentChanged(inputHtml)
{
    if($.trim(inputHtml))
    {
        inputHtml = 'new text';
        return true;
    }
    else
        return false;    
}

3 个答案:

答案 0 :(得分:1)

来自MDN JavaScript reference

  

除对象外的所有类型都定义了不可变值。具体来说,字符串是不可变的

因此您必须返回更新的字符串,不允许进行就地编辑。

答案 1 :(得分:1)

结帐此链接..

您可以按引用传递对象,并可以根据您的要求使用此方法。

<强> Pass by reference

答案 2 :(得分:1)

这样做:

var inputHtml = {text:'hello'};

if(IsContentChanged(inputHtml))
    alert(inputHtml.text);
else
    alert('No content changed');

function IsContentChanged(inputHtml)
{
    if($.trim(inputHtml.text))
    {
        inputHtml.text = 'new text';
        return true;
    }
    else
        return false;    
}