如何在 javascript 中传递字符串值作为引用并在那里更改它
如何在 javascript 中通过引用传递字符串值。
我想要这样的功能。
//Library.js
function TryAppend(strMain,value)
{
strMain=strMain+value;
return true;
}
//pager.aspx
function validate()
{
str="Checking";
TryAppend(str,"TextBox");
alert(str); //expected result "Checking" TextBox
//result being obtained "Checking"
}
如何做到这一点。 ?
How can I pass a string value by reference in javascript.
I want this kind of functionality.
//Library.js
function TryAppend(strMain,value)
{
strMain=strMain+value;
return true;
}
//pager.aspx
function validate()
{
str="Checking";
TryAppend(str,"TextBox");
alert(str); //expected result "Checking" TextBox
//result being obtained "Checking"
}
How to do this. ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
在 JS 中不能通过引用传递值。您可以创建一个带有函数的对象来为您执行此操作:
然后您可以在任何方法中使用它,如下所示:
每次调用追加时,都会附加值字符串。即,
如果您这样做:
append.Value
将等于CheckingTextBox Foo。You cannot pass a value by reference in JS. You could create an object with a function to do this for you:
You can then use this in any method as follows:
Each time you call append, the Value string will be appended to. I.e.
If you then did:
append.Value
would equal CheckingTextBox Foo.您需要返回String而不是
true
!!You need to return the String instead of
true
!!在函数 TryAppend 外部创建一个全局变量(例如 gblstrMain),然后在函数内部将其值设置为 strMain。
由于您特别注重 TryAppend 函数中的“return true”,因此我们可以通过此解决方法来实现。
Create a global variable (say gblstrMain) outside the function TryAppend and then set its value to strMain inside the function.
Since you are particular about "return true" in the TryAppend function, we can achieve by this workaround.