位置: 编程技术 - 正文

javascript中加var和不加var的区别 你真的懂吗(javascript var)

编辑:rootadmin

推荐整理分享javascript中加var和不加var的区别 你真的懂吗(javascript var),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js中var和不加var的区别,js中var和不加var的区别,JavaScript中加号可以连接两个字符串,JavaScript中加号可以连接两个字符串,JavaScript中加号的作用,js中加var和不加var的区别,javascript var,js中加var和不加var的区别,内容如对您有帮助,希望把文章链接给更多的朋友!

Javascript是遵循ECMAScript标准下的一个产物,自然ECMAScript的标准其要遵循。

先来看下var关键字的定义和用法

var 语句用于声明变量。

JavaScript 变量的创建也叫作"声明"一变量:

变量声明后,变量为空 (没有值)。

为变量复制,操作如下:

声明变量时,你同样可以为变量赋值:

语法

参数值

参数 描述 varname 必须。指定变量名。

变量名可以包含字母,数字,下划线和美元符号。

变量名必须以字母开头 变量名也可以以$和_开头(但一般不这么用) 变量名是大小写敏感的(y和Y是不同的变量) 保留字(如JavaScript关键字)不能作为变量名使用 value 可选。指定变量的值。 注意: 如果变量声明未指定值,其默认值为 undefined

大家都看了很多文章,都说避免隐式声明全局变量,就是说声明变量前必须加'var',那加了'var'和不加'var'到底有啥区别呢?

javascript中加var和不加var的区别 你真的懂吗(javascript var)

先来看一段代码

明白了吧,你声明一个全局变量其实是给'window'对象增加了一个属性,下面一段代码有相同效果

那"var a = 'aa' " 和 "a = 'aa' " 都是全局变量,有啥区别了? 看下面两段段代码

都是为'window'对象增加了属性,一个可以删除,一个不能删除。但是加上'var'就可以作用域相关了,不加'var'始终都是在为'window'对象动态添加属性,以下代码为证

由于window对象是全局对象,因此默认可以不加,下面这段同样效果

说到这,认真思考的同学现在必然有个疑问, 为啥隐式声明的全局变量可以删除,显式声明的全局变量就无法删除?

原因是"delete 不可以删除那些可配置性为false的属性" ,某些内置对象的属性是不可配置的,比如通过变量声明或者函数声明创建的全局对象的属性,以下代码为证

那这样不就明白了,通过'var'声明的全局变量,其实际上是为'window'对象增加了一个不可配置的属性, 而不加'var'声明的全局变量,其实际上是为'window'对象增加了一个可以配置的属性。

注意了,以上使用window的地方,window都可以用this代替,如:

至于原因,请查看鄙人之前写的文章 'this,this,再次讨论javascript中的this,超全面'

下面拉出javascript中的var关键字,给大家单独讲解。

我们知道定义变量的时候,我们需要用到Var关键字,使用Var关键字时,我们需要注意他的使用方法:下面几个列子,充分说明了Var在使用和不使用、全局变量和局部变量定义时,有不同的执行结果。

结果为:undefined

结果为:1

结果为:undefined

结果为:1

看到这里对javascript中的var你了解多少,相信大家通过本文学习多多少少都会有点收获的吧。欲了解更多关于javascript var相关知识请持续关注本站,谢谢!

JavaScript实现点击按钮直接打印 很多网站都有此功能,当浏览到底部时都会有一个打印按钮,点击打印按钮就可以完成打印功能,功能非常不错,人性化,代码非常的简单。ahref="javascr

莱鸟介绍window.print()方法 print()方法的定义和用法:此方法可以产生一个打印设置界面,此界面与右击窗口,然后点击打印选项产生的界面一样。语法结构:window.print()浏览器支持:1.

莱鸟介绍javascript onclick事件 onclick事件的定义和用法:当点击对象的时候会触发此事件。浏览器支持:1.IE浏览器支持此事件。2.火狐浏览器支持此事件。3.Opera浏览器支持此事件。4.谷

标签: javascript var

本文链接地址:https://www.jiuchutong.com/biancheng/384733.html 转载请保留说明!

上一篇:JavaScript引用类型和基本类型详解(js 引用类型)

下一篇:JavaScript实现点击按钮直接打印(js点击代码)

  • 股权激励费用怎么摊销
  • 劳务派遣人员的工资计入什么科目
  • 退回代征手续费怎么做会计分录
  • 企业所得税期初资产总额怎么填写
  • 发票打印机贵吗
  • 通行费 发票
  • 开现代服务发票有什么要求吗
  • 衍生工具和非衍生工具怎么区分
  • 单位缴纳的社保在哪里查询
  • 工会活动购买物品会计分录
  • 购买银行理财产品被骗怎么办
  • 增值税专用发票的税率是多少啊
  • 咨询费可以入账吗
  • 房地产企业各个阶段所涉及的税种
  • 电子银行承兑如何背书给别人
  • 增值税专票销售额比对(非差额企业)
  • 转售水电收入
  • 电子发票报销有什么用
  • 发放的离职补偿金怎么做账
  • 流动资产损毁报废收益
  • 应付票据可能涉及的科目
  • 公司出租房租怎么交税
  • 虚假财务报表的法律后果
  • 服务费的进项发票怎么做
  • url示例
  • php获取参数值的三种方式
  • 股权转让个人所得税优惠政策
  • php实现定时任务
  • php tr td
  • 服务行业的进项
  • 个人独资为什么不能叫公司
  • 生产劳务成本会计分录
  • 一般纳税人怎样申请简易计税
  • mongodb怎么用
  • 公司pos机使用规范
  • 小规模纳税人开票限额是多少
  • 数据库参数错误
  • 开的票比实际支付的多,账务怎么处理
  • 母公司给子公司开票会有税务风险吗
  • 工会经费多久缴纳一次
  • 当月进项发票忘记抵扣
  • 异地房产税如何收
  • 决算清理期和库款报解整理期
  • 专票红冲信息表填开显示红字信息表金额大于蓝色金额
  • 无偿划转资产需要挂其他应收款吗
  • 公司美元账户收款方便吗
  • 银行回单nxt
  • 资产利润表
  • 股东利润分配预缴税款
  • 账务核对包括账表核对吗
  • 企业处理原材料会计分录
  • 计提的意义
  • 开设明细账
  • 如何动态修改mysql的全局参数
  • sql需要哪些基础
  • sql忽略null
  • 联想s5s531笔记本M2
  • xampp3.2.4安装教程与配置
  • window10右击
  • fdisk 分区表
  • windows怎么定位
  • Win10预览版怎么变回正式版
  • WIN10系统中断
  • ubuntu和windows比较有什么好处
  • xp系统如何取消隐藏
  • windows8为什么不好用
  • windows10mobile壁纸
  • linux软件列表
  • linux日志数据种类
  • linux的命令行界面
  • linux使用语言
  • perl 获取参数
  • jquery使用教程
  • jQuery中的AjaxSubmit使用讲解
  • 猫咪的testflight
  • 境外抵免限额如何申请
  • 海关编码更新
  • 天津税务陈岩
  • 代理记账协会成立时间
  • 税务投诉电话12345
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设