javascript - 为什么Javascript函数可以从外部更新对象的原始属性但不能更新原始变量
问题描述
let variable1="hello";
function func1(variable){
variable="hello hello";
}
func1(variable1);
console.log("after function: "+variable1);
let object1={
property1:"hello2"
}
function func2(obj){
obj.property="hello object";
}
func2(object1);
console.log("after function:" +object1.property);
我有这段代码,第一个 console.log() 返回
hello
但第二个 console.log() 返回
hello object
所以我明白javascript不能改变和更新变量,但它可以改变和更新对象的属性。但为什么以及如何?
解决方案
推荐阅读
- cookiecutter-django - 部署 django-cookiecutter 项目所需的最少 AWS 要求/更改数量是多少?
- discord.py - 如何为每个服务器设置其独特的欢迎频道?不和谐.py
- c# - 为什么 Strings.Asc('š') 和 Strings.AscW('š') 返回不同的值?
- php - 用php替换文件中的字符
- python - 麻烦在python中反转矩阵
- django - Django Rest Framework - React - 注销后无法立即登录
- r - 在r中重新排序数据框中的行
- python - 如何编写程序刚刚生成的python文件?
- json - 从 ASMX Web 服务获取 JSON 列名
- android - 无法在谷歌私人商店中发布私人安卓应用