4当前位置:网页制作JavaScript教程浅谈JavaScript中定义变量时有无…
4网页制作分类
CSS | HTML
FrontPage | DreamWeaver
JavaScript | ASP
.Net | PHP
JSP | XML
数据库 | PhotoShop
FireWorks | Flash
视频 | 其它
4赞助商链接
4最新网页制作
·浅谈JavaScript中定义变量时有无var声明的区别
·通过Jquery获取URL参数并转码
·Javascript获取时间间隔的方法
·Javascript获取视频时长
·javascript中双感叹号(!!)作用示例介绍
·javascript:void(0)使用探讨
·JS设置下拉框为只读的方法
·JS转化毫秒为时间格式代码
·Js控制CSS切换样式表实现网页风格切换
·网页更换皮肤样式功能浅析
4热门网页制作
·网页自动适应客户端分辨率的实现
·JS网页加载进度条
·突破IE屏蔽限制弹出新窗口
·三级下拉联动链接菜单
·文本框控制字数和禁止粘贴
·33个JavaScript经典效果
·JS获取页面地址栏参数
·JavaScript去除空格的三种方法
·又一个全国省市双级联动下拉选择框
·全国省市县无刷新多级联动菜单
4相关网页制作
·onmouseup与onclick的区别
·10个最常用的Javascript自定义函数
·兼容各种浏览器的复制内容到剪贴板方法
·网页mp3播放器不兼容各种浏览器的解决方法
·JS函数检查图片大小是否大于预期大小
·Javascript修改客户端注册表
·批量添加歌曲的JS脚本
·从零开始写jQuery框架
·灵活简洁的新窗口打开链接方式
·JS函数动态添加CSS样式表
浅谈JavaScript中定义变量时有无var声明的区别
类别:JavaScript教程    来源:网络    时间:2014/8/19    贴士:推荐给好友
收藏本页 8 
  前段时间回答了一个关于定义变量时使用关键字var与否的区别,总结回顾一下。

  1、在函数作用域内,加var定义的变量是局部变量,不加var定义的就成了全局变量。

  使用var定义:
var a = 'hello World';
function bb(){
 var a = 'hello Bill';
 console.log(a);  
}
bb() //'hello Bill'
console.log(a); //'hello world'


  不使用var定义:
var a = 'hello World';
function bb(){
 a = 'hello Bill';
 console.log(a);  
}
bb(); //'hello Bill'
console.log(a); //'hello Bill'


  2、在全局作用域下,使用var定义的变量不可以delete,没有var定义的变量可以delete。也就说明隐含全局变量严格来说不是真正的变量,而是全局对象的属性,因为属性可以通过delete删除,而变量不可以。

  3、使用var定义变量还会提升变量声明,即:

  使用var定义:
function hh(){
 console.log(a);
 var a = 'hello world';
}
hh(); //undefined


  不使用var定义:
function hh(){
 console.log(a);
 a = 'hello world';
}
hh(); //'a is not defined'


  这就是使用var定义的变量的声明提前。

  4、在ES5的“use strict”模式下,如果变量没有使用var定义,就会报错。
·上一篇:通过Jquery获取URL参数并转码
·下一篇:这已经是本类最后一篇记录了!
本站部分内容收集整理于网络,仅用于学习,不存在商业目的,如有涉及版权等问题请联系站长,本站将在第一时间内进行处理!
Copyright © 2007-2010 Zzsky.Cn  中国站长天空  网站制作维护:可乐猫  QQ:8127544(请注明来意)
设为首页  加入收藏  联系站长  友情链接  闽ICP备12017729号