我可以通过javascript函数传递一个值吗?

AJ.*_*AJ. 0 javascript

我可以从javascript函数传递一个值并返回到调用函数,例如

function updateURL(url, name, param) {
  url = url + "&" + name + "=" + param;
}
Run Code Online (Sandbox Code Playgroud)

我想更新网址并返回新值.

这可能吗?

Zac*_*sch 5

你所要求的是" 传递参考 ".Javascript 对本机类型(int,string等)使用" pass-by-value "---其他类型是pass-by-reference.对于您的具体情况,我可以想出两种方法来获得您想要的东西.第一个是要求调用者传入一个包含单个元素的数组并修改该元素:

function updateURL(url, name, param) {
    url[0] = url[0] + "&" + name + "=" + param;
}
url = ['http://www.google.com/?'];
updateURL(url, 'foo', 'bar');
alert(url[0]);
Run Code Online (Sandbox Code Playgroud)

第二种方法是在对象上使用属性:

function updateURL(url, name, param) {
    url.url = url.url + "&" + name + "=" + param;
}
url = new Object();
url.url = 'http://www.google.com/?';
updateURL(url, 'foo', 'bar');
alert(url.url);
Run Code Online (Sandbox Code Playgroud)