JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。js中的var是起声明作用,可以声明变量等。下面和小编一起详细了解一下吧。

var作用:声明作用;如声明个变量。

语法var c = 1;

省略var

在javascript中,若省略var关键字而直接赋值,那么这个变量为全局变量,哪怕是在function里定义的。

function Define() {

a = 2;

}

function Hello() {

alert(a);

}

如代码所示,运行函数Define()后,变量a声明为全局变量。

在Hello()函数中可以引用变量a。

我们都知道 JavaScript 中的var关键字是用来申明变量的,但是如果不用这个关键字而直接写出变量名,然后赋值给它,JavaScript 也并不会报错,它会自动申明这个变量。

难道说 JavaScript 中的var是个多余的东西吗?显然不是!

请看下面这段代码:str1 = 'Hello JavaScript!';

function fun1() {

str1 = 'Hello Java!';

}

fun1();

alert(str1);

// 弹出 Hello Java!

可以看到,在函数 fun1 被调用后,str1 的值在函数内被改变了。

再将上面的代码稍作修改:str1 = 'Hello JavaScript!';

function fun1() {

var str1 = 'Hello Java!';

}

fun1();

alert(str1);

// 弹出 Hello JavaScript!

看到没有,str1 的值并没有被函数 fun1 改变。

显然,var关键字影响了变量的作用域。

函数外部:变量不管是否用了var申明,都是全局变量。

函数内部:变量如果没有使用var关键字申明,那它就是全局变量,只有用var关键字申明了,才是局部变量。

结论:为了避免潜在的风险,务必使用var关键字来申明变量。

java中var是什么意思_js中的var是什么意思相关推荐

  1. java数组 js数组的长度_js中split()方法得到的数组长度问题

    定义和用法 split() 方法用于把一个字符串分割成字符串数组. 语法 stringObject.split(separator,howmany) 参数 描述 separator 必需.字符串或正则 ...

  2. python中什么是按位取反_js中怎么理解按位取反?

    第一位同学写的挺好的,但一开始我没太明白为什么这样计算

  3. 前端中unescape是什么意思_js中escape()函数和unescape()函数的功能

    1.escape   方法 对   String   对象编码以便它们能在所有计算机上可读, escape(charString) 必选项   charstring   参数是要编码的任意   Str ...

  4. java中正则全局匹配_JS中正则表达式全局匹配模式/g用法实例

    JS中正则表达式全局匹配模式 /g用法详解 本文章来详细介绍js中正则表达式的全局匹配模式 /g用法, var str = "123#abc"; var re = /abc/ig; ...

  5. java script中定义的var变量怎么在body中使用,深入分析JavaScriptvar中的预解析与副作用...

    var的副作用 隐式全局变量和明确定义的全局变量间有些小的差异,就是通过delete操作符让变量未定义的能力. 通过var创建的全局变量(任何函数之外的程序中创建)是不能被删除的. 无var创建的隐式 ...

  6. js map的get 和list比 那个快_js中let和var

    let与var 在js中声明一个变量除了一个var 还有一个let的声明.对于var 在前面的作用域中已经讲过,这次主要说下二者的区别: 在MDN上有这样的一个demo: var list = doc ...

  7. java去掉前后空格_js中去除字符串前后空格

    第一种:循环检查替换 [javascript] //供使用者调用 function trim(s){ return trimRight(trimLeft(s)); } //去掉左边的空白 functi ...

  8. java backbone_[Java教程]移动前端开发中的Backbone之一:Backbone中的模型和集合

    [Java教程]移动前端开发中的Backbone之一:Backbone中的模型和集合 0 2015-09-24 17:00:04 当我们开发含有大量Javascript的web应用程序时,首先你需要做 ...

  9. js 浅拷贝直接赋值_JS中实现浅拷贝和深拷贝的代码详解

    (一)JS中基本类型和引用类型 JavaScript的变量中包含两种类型的值:基本类型值 和 引用类型值,在内存中的表现形式在于:前者是存储在栈中的一些简单的数据段,后者则是保存在堆内存中的一个对象. ...

最新文章

  1. 阎崇年:《袁崇焕传》自序
  2. Ajax学习-Ajax简介
  3. php--理解PHP的依赖注入和laravel的服务容器
  4. JDK10的新特性:var泛型和多个接口实现
  5. bcp文件, 逗号文件
  6. app mvc框架_Google App Engine上的Spring MVC和REST
  7. js时间延迟执行函数
  8. 互联网晚报 | 12月31日 星期五 | 滴滴发布上市后首份财报;商汤科技正式登陆港交所;我国高铁运营里程突破4万公里...
  9. Python 进阶 —— 使用修饰器执行函数的参数检查
  10. 计算机办公自动化知识试题及答案,2015年计算机办公自动化考试试题及答案
  11. 讯飞在线语音TTS队列策略
  12. astah——UML类图画法
  13. 交通灯控制系统C语言代码,《C语言代码-交通灯控制器》.doc
  14. python爬取别人qq空间相册_用python爬取QQ空间
  15. 我花了20年研究华为:绝大多数失败的企业,都毁在了老板的自私上
  16. 绝知此事要躬行|fatal: not in a git directoryError: Command failed with exit 128: git
  17. AE-摄影机和跟踪器
  18. java空瓶换饮料的程序实现
  19. ③计算机病毒实验实验报告
  20. W3School20道题 测试你的HTML技能

热门文章

  1. bootstraptable 加载完成_bootstrap table onLoadSuccess加载服务端数据成功事件
  2. xpcom java_[Mozilla] JavaXPCOM 的jar 包概述
  3. mvn导入jar到库命令
  4. python typing typescript_将 python 数据转化为 TypeScript 格式
  5. 五十六、 白话讲解商业智能 BI、数据仓库 DW、数据挖掘 DM
  6. 有机化学芳烃 芳香性
  7. CoSENT:比Sentence-BERT更有效的句向量方案
  8. 浅谈问题生成(Question Generation)
  9. 直播 | ICML 2021论文解读:满足隐私保护要求的去中心化无监督域迁移范式
  10. 如何做深ViT模型?NUS、字节:引入Re-attention机制,实现强大性能