温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

JS变量有哪些类型

发布时间:2021-09-09 10:38:18 来源:亿速云 阅读:137 作者:chen 栏目:开发技术

这篇文章主要讲解了“JS变量有哪些类型”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JS变量有哪些类型”吧!

  基本类型和引用类型

  在上一小节,我们介绍了JavaScript中的数据类型,其中基本类型如数字,布尔值,它们在内存中都有固定的大小,我们通过变量来直接访问基本类型的数据。而对于引用类型,如对象,数组和函数,由于它们的大小在原则上是不受任何限制的,故我们通过对其引用的访问来访问它们本身,引用本身是一个地址,即指向真实存储复杂对象的位置。

  基本类型和引用类型的区别是比较明显的,我们来看几个例子:

  var x=1;//数字x,基本类型

  var y=x;//数字y,基本类型

  print(x);

  print(y);

  x=2;//修改x的值

  print(x);//x的值变为2

  print(y);//y的值不会变化

  运行结果如下:

  这样的运行结果应该在你的意料之内,没有什么特别之处,我们再来看看引用类型的例子,由于数组的长度非固定,可以动态增删,因此数组为引用类型:

  var array=[1,2,3,4,5];

  var arrayRef=array;

  array.push(6);

  print(arrayRef);

  引用指向的是地址,也就是说,引用不会指向引用本身,而是指向该引用所对应的实际对象。因此通过修改array指向的数组,则arrayRef指向的是同一个对象,因此运行效果如下:

  1,2,3,4,5,6

  变量的作用域

  变量被定义的区域即为其作用域,全局变量具有全局作用域;局部变量,比如声明在函数内部的变量则具有局部作用域,在函数的外部是不能直接访问的。比如:

  JS变量有哪些意思

  var variable="out";

  function func(){

  var variable="in";

  print(variable);//打印”in”

  }

  func();

  print(variable);//打印”out”

  应该注意的是,在函数内var关键字是必须的,如果使用了变量而没有写var关键字,则默认的操作是对全局对象的,比如:

  var variable="out";

  function func(){

  variable="in";//注意此variable前没有var关键字

  print(variable);

  }

  func();

  print(variable);//全局的变量variable被修改

  由于函数func中使用variable而没有关键字var,则默认是对全局对象variable属性做的操作(修改variable的值为in),因此此段代码会打印:

  in

  in

感谢各位的阅读,以上就是“JS变量有哪些类型”的内容了,经过本文的学习后,相信大家对JS变量有哪些类型这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

js
AI