返回顶部
首页 > 资讯 > 前端开发 > JavaScript >在JavaScript中var的缺点有哪些
  • 410
分享到

在JavaScript中var的缺点有哪些

2024-04-02 19:04:59 410人浏览 八月长安
摘要

这篇文章主要介绍在javascript中var的缺点有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! JavaScript中var存在的缺陷:1、va

这篇文章主要介绍在javascript中var的缺点有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

JavaScript中var存在的缺陷:1、var定义的变量没有块作用域;2、var定义的全局变量会自动添加全局window对象的属性;3、var定义的变量会提前装载。

教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

使用var定义变量可能存在如下问题:

  • var定义的变量没有块作用域。

  • var定义的全局变量会自动添加全局window对象的属性。

  • var定义的变量会提前装载。

那么如何弥补var的缺陷?可以使用let关键字,let关键字的出现正好解决了上述问题

1.let定义的变量有块作用域:

我们先来看代码:

<script type="text/javascript">
	for(let i = 0;i < 10; i++){
		console.log(i);
	}
	console.log("循环体之外:" + i);//报错:letScope.html:5 Uncaught ReferenceError: i is not defined
</script>

运行结果:
在JavaScript中var的缺点有哪些
上面的程序在for循环中使用了let来定义循环计数器,这样该循环计数器i将只在for循环中有效,因此程序在循环体之外访问i变量就会报错。如果用var来定义i变量,则会将作用域扩散到循环体外。

2.let定义的全局变量不会自动添加到window对象的属性:

我们再看一个示例:

<script type="text/javascript">
	let name = '巴啦啦';
		console.log(name); //输出巴啦啦
		console.log(window.name); //window.name不存在
</script>

运行结果:

在JavaScript中var的缺点有哪些
上面代码使用let定义一个全局变量name,但与使用var定义全局变量不同的是,使用let定义的全局变量不会变成window对象的属性,所以运行上面程序访问window.name时,看不到任何输出。

3.let定义的变量不会提前装载:

看如下示例:

<script type="text/javascript">
	var name = '巴啦啦';
	function func(){
		console.log(name);
		let name = 'fkit';
		console.log(name);
	}
	func();
</script>

运行结果:

在JavaScript中var的缺点有哪些

使用let定义的变量要等到程序流执行到定义变量的代码行时才会转载。

上面程序先定义了一个全局变量name,接下来程序再func()函数中使用let定义了同名的name变量,此时局部变量name会覆盖全局的name变量。但由于使用let定义的变量不会提前装载,因此func()函数在使用let定义局部变量name之前访问name变量会导致错误-----如果将func()函数中定义name变量的关键字改为var,则会有不同的效果。

修改后运行结果如下:

在JavaScript中var的缺点有哪些

以上是“在JavaScript中var的缺点有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网JavaScript频道!

--结束END--

本文标题: 在JavaScript中var的缺点有哪些

本文链接: https://lsjlt.com/news/69291.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 在JavaScript中var的缺点有哪些
    这篇文章主要介绍在JavaScript中var的缺点有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! JavaScript中var存在的缺陷:1、va...
    99+
    2024-04-02
  • javascript有哪些缺点
    这篇文章主要介绍了javascript有哪些缺点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 javascri...
    99+
    2024-04-02
  • JavaScript中继承的优缺点有哪些
    这篇文章给大家分享的是有关JavaScript中继承的优缺点有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。本文讲解JavaScript各种继承方式和优缺点。但是注意:这篇文...
    99+
    2024-04-02
  • javascript中var和let有哪些区别
    这篇文章主要介绍了javascript中var和let有哪些区别,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 ...
    99+
    2024-04-02
  • javascript构造方法的缺点有哪些
    今天小编给大家分享一下javascript构造方法的缺点有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们...
    99+
    2024-04-02
  • javascript array数组有哪些优缺点
    JavaScript中的数组(Array)具有以下优点和缺点:优点:1. 灵活性:JavaScript数组可以包含不同类型的数据(字...
    99+
    2023-10-11
    javascript
  • var,let,const的异同点有哪些
    小编给大家分享一下var,let,const的异同点有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、let和var区别1...
    99+
    2024-04-02
  • JavaScript中var let const的用法有哪些区别
    目录1.重复声明1.1 var1.2 let1.3 const2.变量提升2.1 var2.2 let2.3 const3.暂时性死区3.1 var3.2 let3.3 conset...
    99+
    2024-04-02
  • PXC的缺点有哪些
    这篇文章主要介绍“PXC的缺点有哪些”,在日常操作中,相信很多人在PXC的缺点有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PXC的缺点有哪些”的疑惑有所帮助!接下来,...
    99+
    2024-04-02
  • VPS的缺点有哪些
    VPS的缺点有:1、VPS的性能和资源受制于服务器母机,如果服务器母机配置较低,VPS的性能就会比较差;2、VPS容易被流量攻击连累,当服务器母机或其他VPS遭受流量攻击时,会影响整体VPS的正常运作;3、VPS受虚拟化技术限制,采用不同虚...
    99+
    2024-04-02
  • Python的缺点有哪些
    这篇文章主要讲解了“Python的缺点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python的缺点有哪些”吧!Python 是20世纪90年代发布的一种通用编程语言。虽然 Pyth...
    99+
    2023-06-16
  • win11的缺点有哪些
    Win11的缺点包括以下几点:1. 硬件要求高:Win11对硬件的要求相对较高,需要64位处理器、4GB的内存和64GB的存储空间,...
    99+
    2023-08-31
    win11
  • Javascript中for in的缺陷有哪些
    这篇文章主要介绍Javascript中for in的缺陷有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Javascript for in的缺陷总结for in 语句用来列举对象...
    99+
    2024-04-02
  • Windows 同步:Python 和 JavaScript 的优缺点有哪些?
    在当今的互联网时代,数据的同步是非常重要的一个环节。不论是作为个人用户还是企业用户,数据同步的需求都是非常普遍的。而在数据同步的实现过程中,编程语言的选择也是非常重要的一个因素。在本文中,我们将会探讨 Python 和 JavaScrip...
    99+
    2023-09-09
    javascript windows 同步
  • 在Android开发中使用 AsyncTask的缺点有哪些
    今天就跟大家聊聊有关在Android开发中使用 AsyncTask的缺点有哪些,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在Android开发中,AsyncTask可以使...
    99+
    2023-05-31
    android asynctask cta
  • c++中的terminatethread有哪些优缺点
    在C++中,TerminateThread是一个用于强制终止线程的函数。它有以下一些优点和缺点: 优点: 快速终止线程:Termi...
    99+
    2024-02-29
    c++
  • vuejs缺点有哪些
    这篇文章主要介绍了vuejs缺点有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 vuejs缺点:1、不缺入...
    99+
    2024-04-02
  • LINQ有哪些缺点
    本篇内容介绍了“LINQ有哪些缺点”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!LINQ前景目前的LINQ还是非常之不完善的,不论是LINQ...
    99+
    2023-06-17
  • laravel有哪些缺点
    这篇文章主要介绍了laravel有哪些缺点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。laravel框架的缺点有:1、基于组件式的框架,比较臃肿;2、框架大,比yaf等小型...
    99+
    2023-06-29
  • chatgpt有哪些缺点
    本篇内容主要讲解“chatgpt有哪些缺点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“chatgpt有哪些缺点”吧! chatgpt的不足点1、出现了事实性...
    99+
    2023-02-09
    chatgpt
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作