JavaScript 作用域:在函数后保留全局变量值
javascript scope : retain global variable value after a function
当调用"斜边"函数时,"x"的值从1开始变化。修复它,使"x"在 gobal 范围内仍然是 1。
var x = 1;
var y = 1;
function hypotenuse(a , b) {
var cSquared = a * a + b * b;
x = Math.sqrt(cSquared);
return x;
}
hypotenuse(x, y);
要实现这一点,您需要做的就是在函数中使用var
重新声明 x 变量。这将在函数的作用域内声明x
变量,保持原始的全局作用域x
变量不变:
var x = 1;
var y = 1;
function hypotenuse(a , b) {
var cSquared = a * a + b * b,
x = Math.sqrt(cSquared);
return x;
}
hypotenuse(x, y);
或者,使用您最初采用的代码样式(拆分出var
声明):
var x = 1;
var y = 1;
function hypotenuse(a , b) {
var cSquared = a * a + b * b;
var x = Math.sqrt(cSquared);
return x;
}
hypotenuse(x, y);
有关此处发生的事情的更多详细信息,请阅读javascript范围
试试这个:
var x = 1;
var y = 1;
function hypotenuse(a, b) {
var cSquared = a * a + b * b;
var x = Math.sqrt(cSquared);
return x;
}
//console.log(hypotenuse(x, y));
//console.log('x = ' + x);
相关文章:
- 分派点击事件并保留击键修饰符
- 全局变量和全局对象的属性之间有什么区别吗
- 正在全局范围中查找JavaScript函数
- delete关键字在全局变量上的不同行为
- 在javascript函数中设置全局变量
- 如何将getJson的响应保存在全局变量中
- 如何使用jquery强制一个单词更改大小写等以保留品牌
- 提交后保留下拉选择的值
- 全局对象是属于哪个类的对象
- Javascript全局onclick监听器
- 从Javascript方法返回全局变量
- 保留 JQuery Vars 用于另一个函数(全局变量?)
- GAS:在处理程序函数中使用变量时,如何更改全局变量值并保留其更改后的值
- 从数组中删除元素,然后保留其状态以备将来使用,而不使用全局变量
- 像cookie这样的全局变量,它在回发后保留值,但应该为不同的实例保存不同的值(选项卡/窗口)
- JavaScript 作用域:在函数后保留全局变量值
- JavaScript 全局不保留范围?创建自动完成 Web 服务 JSON 对象
- 如何在 JavaScript 中覆盖全局函数,但保留对原始函数的引用
- 如何在Javascript中跟踪/保留全局命名空间
- 从JSON文件中获得的值保留在解析函数上;t被分配给全局变量