怎样理解JavaScript中的变量与作用域
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,怎样理解JavaScript中的变量与作用域,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1、原始值与引用值6种简单数据类型的值都是原始
千家信息网最后更新 2025年01月31日怎样理解JavaScript中的变量与作用域
怎样理解JavaScript中的变量与作用域,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
1、原始值与引用值
6种简单数据类型的值都是原始值, 原始值通过变量赋值给另一个变量时,会复制一个出一个新的值,两者相互独立。
let num1 = 5let num2 = num1
引用值通过变量赋值给另一个变量时,也会复制一个值,这个值其实是一个指针(引用),该指针指向的还是同一个对象。
let obj1 = new Object()let obj2 = obj1
既然是指向同一个引用对象,那么给obj1
添加属性,也会作用到obj2
身上去。
obj1.name = "zhangsan"console.log(obj2.name) // zhangsan
函数在传参的过程中,只有一种情况就是按照值传递,这跟变量的赋值是一个样。只不过,对于引用值,传递的值是指针,但指针指向的还是同一个对象。
2、instanceof
typeof
一般适合用来判断原始值,对于引用值并不使用,因为 null
和 其它对象返回的都是 object,具体是什么类型的对象并不知道。 而判断引用值具体是什么类型对象最好的方法就是用 instanceof
表达式。
console.log(1 instanceof Object) //falselet obj = new Object();console.log(obj instanceof Object) //trueconsole.log(null instanceof Object) //falsefunction fun(){ //}console.log(fun instanceof Object) //trueconsole.log(fun instanceof Function) //trueconsole.log([] instanceof Object) //trueconsole.log([] instanceof Array) //true
3、作用域
变量的作用范围称为作用域或者执行上下文,变量脱离了该作用域不再可见,所有系统查找一个变量时是有一个作用域链的。先从引用该变量最近的块作用域找,没找到继续往外局部作用域找,再没找到就在全局作用域中查找。如果还没找到就会报错 ReferenceError: xxx is not defined
。
看完上述内容,你们掌握怎样理解JavaScript中的变量与作用域的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
作用
变量
对象
原始
指针
指向
方法
类型
内容
就是
更多
还是
问题
束手无策
一个样
为此
上下
上下文
全局
函数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全教育的手抄报文字
什么是网络数据服务器搭建
网络安全市场占有率2014
下一代计算机网络技术是什么
数据库中什么是1nf
浪潮服务器安全加固模块
八公山网络安全宣传
消防网络安全授课
软件开发公司范围简介
机房服务器怎么重启
松江区技术软件开发大概费用
网络技术总结
关于网络技术人物访谈
煜庭互联网信息科技
牛奶的服务器整活
CISCO网络安全基础第二章
高级数据库技术 试卷
数据库应用与维护
互联网服务器面试题
智慧农贸市场软件开发
苹果软件开发教程
网络安全防范木马例子
中职网络安全教学计划
计算所邮箱发件服务器
数据库技术经历的发展阶段
用命令方式创建表和数据库
华为服务器贴吧
台州java软件开发工程师
去深圳找软件开发
服务器防护探讨