关于JavaScript和局部变量,我有一个相当普遍的问题.我的问题是以下内容之间有什么区别,如果有的话:
function bla
{
var a = 2; // local variable
a = 3; // the local variable a gets a new value
// Would do the following line anything different
// (than simply asigning this value?)
var a = 4;
}
Run Code Online (Sandbox Code Playgroud)
我想我不会得到两个名为a的局部变量.在其他语言中,这甚至是一个错误.那有什么用呢?
我正在开发一个C++ Metro风格的应用程序,必须通过引用传递一个字符串(不知何故).起初,我传递了String ^,它不起作用,因为字符串是不可变的我是如何找到的.
通过引用传递字符串的正确方法是什么?
编辑:好的,似乎这并不容易,因为答案和评论建议使用返回值.但据我认为这在我的情况下不适用:在这个Metro应用程序中,我有两个页面,并且这两个页面应该"共享"一个字符串.
所以在主页面中我在点击事件中这样做:
this->Frame->Navigate(newPage, this->TestString);
在第二页的OnNavigatedTo事件中,我将第二个参数转换为String ^并更改它.然后我用this->Frame->GoBack()它导航回第一页.在那里,我想访问更改的字符串.不幸的是,就我所知,GoBack()不允许传递任何参数.