Javascript 获取函数内部的变量

Javascript 获取函数内部的变量,javascript,Javascript,您好,我是javascript新手,我只想问一下,是否可以在函数中获取值 示例代码 function a(){ var sample = "hello world" }; 然后我将转到全局上下文并获取变量sample sample2 = sample console.log(sample2); 当i console.log sample2时,sample2的值应该是“hello world”,请分享您的知识,我想在javascript中学习更多内容,提前感谢 function a(){

您好,我是javascript新手,我只想问一下,是否可以在函数中获取值

示例代码

function a(){
  var sample = "hello world"
};
然后我将转到全局上下文并获取变量
sample

sample2 = sample
console.log(sample2);

当i console.log sample2时,sample2的值应该是“hello world”,请分享您的知识,我想在javascript中学习更多内容,提前感谢

function a(){
  var sample = "hello world";
  return sample;
}
sample2 = a();
console.log(sample2);

有很多方法可以做到这一点,到目前为止,最好的方法是在函数外部声明变量,然后在函数内部分配它们

var sample;
var myname;

function a() {
    sample = "Hello World";
    myname = "Solly M";
}

console.log(sample);
console.log(myname);

像任何其他编程语言一样,您所需要做的就是返回需要访问的值。因此,您可以让函数返回变量值,这样您就可以访问它。或者让它返回一个对象,该对象还具有子函数,您可以使用这些子函数返回值

所以按照第一种方法,

function a() {
    var sample = "hello world";
    return sample;
}

var sample2 = a();
console.log(sample2); //This prints hello world
或者,您可以使用第二种方法,通过公开二级函数(如

function a() {
    var sample = "hello world";
    return {
        get : function () {
            return sample;
        },
        set : function (val) {
            sample = val;
        }
    }
}

//Now you can call the get function and set function separately
var sample2 = new a();
console.log(sample2.get()); // This prints hello world

sample2.set('Force is within you'); //This alters the value of private variable sample

console.log(sample2.get()); // This prints Force is within you

希望这能解决您的疑问。

不,不会的<一旦
a
完成执行,code>sample将失去其作用域。如果希望将
sample
的值设置为
sample2
返回
sample
内部
a
,然后执行
sample2=a()