javascript - 为什么将 var 传递给函数会使这个 var 在内部不可变?
问题描述
我是 js 新手,我想了解这三种情况下 x 变量之间的区别,以及为什么这段代码中的第三种情况让我 x=10 仍然感到困惑
var x = 10;
function test(){
var x = 15;
}
test();
console.log(x)// return 10
///////////////////////////
var x = 10;
function test(){
x = 15;
}
test();
console.log(x)// return 15
////////////////////////////
var x = 10;
function test(x){
x = 15;
}
test();
console.log(x)// return 10
解决方案
这是因为 x 是按值(而不是引用)传递的。有关更详细的说明,请参见:http: //jasonjl.me/blog/2014/10/15/javascript/
推荐阅读
- php - 使用正则表达式查找元标记的内容?
- python - 如何使用 h5py 为每个 HDF5 列定义单独的数据类型
- flutter - 如何在 Flutter 中隐藏 DataTable 的列标题?
- mysql - 在多列中查找最频繁的数字
- laravel - 无法通过 php artisan migrate 命令在 laravel 中进行迁移
- python - Django REST Framework - 对添加订单的用户的引用
- javascript - 简单的 add 函数返回 NaN
- web - 本网站使用哪些技术来展示 3D 产品?
- node.js - Next.js 动态路由 - 添加 SLUG 后页面重新加载时出现 404
- javascript - Vuetify 应用栏位于内容下方。我如何解决它?