【发布时间】:2021-05-18 18:56:02
【问题描述】:
我正在尝试使用函数来更改节点 js 中变量的值。我正在使用的恰好是异步函数,但我在常规(非异步)函数中也有相同的行为。
代码是
async function change_string(new_string){
new_string='goodbye';
}
async function main() {
var new_string;
new_string='hello';
await change_string(new_string);
console.log(new_string);
}
main();
我希望控制台记录“再见”,但它正在记录“你好”。 javscript 函数的工作方式一定有一些我不明白的地方。我需要专门返回 new_string 吗?谢谢。
【问题讨论】:
-
您在 change_string 函数中更改了变量 new_string。而你的 console.log 是函数 main 中的变量 new_string。
标签: javascript node.js variables scope return-value