javascript中使用未定义变量或值的情况分析


Posted in Javascript onJuly 19, 2016

本文实例讲述了javascript中使用未定义变量或值的情况。分享给大家供大家参考,具体如下:

javascript里面一般不能使用未定义的值,但是下面几种情况除外:

1. 赋值语句中:

a=9;
alert(a) //9

赋值语句中需要赋值的变量没定义会先定义,再赋值。另外从 a=b=c=8 不报错可以看出赋值语句是从右向左执行的。

2. for in语句中:

for(key in {name:'goofy'}){
    alert(key) //"name"
}
alert(key) //"name"

for in语句中in左边的变量如果没定义也会先定义

3. typeof运算符后:

alert(typeof a) //'undefined'
alert(a) //Uncaught ReferenceError: a is not defined

typeof 运算符可以跟未定义的值,但是不会去主动定义它

4. 对象属性:

var o={name:'goofy'}
alert(o.name) // 'goofy'
o[age]=24; // Uncaught ReferenceError: age is not defined
alert(o.age)

在定义对象属性的时候如果是json直接量的形式可以使用没定义的值, 但是如果用下标的形式就会报错

5. function的参数:

function fn(a,b){
    alert(a) //4
    alert(b) //'undefined'
}
fn(4)

函数执行的时候会主动定义参数,所以在函数体内可以直接使用函数的参数,即时方法调用的时候这个参数并没有传递也不会报错

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jQuery中.live()方法的用法深入解析
Dec 30 Javascript
特殊情况下如何获取span里面的值
May 20 Javascript
Thinkphp模板没有解析直接原样输出的解决方法
Oct 31 Javascript
js中取得变量绝对值的方法
Jan 03 Javascript
判断是否存在子节点的实现代码
May 18 Javascript
DOM操作原生js 的bug,使用jQuery 可以消除的解决方法
Sep 04 Javascript
JS实现标签页切换效果
May 04 Javascript
jQuery常见面试题之DOM操作详析
Jul 05 jQuery
使用vue-resource进行数据交互的实例
Sep 02 Javascript
vue-cli 3.x配置跨域代理的实现方法
Apr 12 Javascript
JS 事件机制完整示例分析
Jan 15 Javascript
javascript运行机制之执行顺序理解
Aug 03 Javascript
js基于cookie记录来宾姓名的方法
Jul 19 #Javascript
jQuery悬停文字提示框插件jquery.tooltipster.js用法示例【附demo源码下载】
Jul 19 #Javascript
使用plupload自定义参数实现多文件上传
Jul 19 #Javascript
artDialog+plupload实现多文件上传
Jul 19 #Javascript
plupload+artdialog实现多平台上传文件
Jul 19 #Javascript
如何在JS中实现相互转换XML和JSON
Jul 19 #Javascript
js 动态给元素添加、移除事件的实现方法
Jul 19 #Javascript
You might like
PHP的面试题集,附我的答案和分析(一)
2006/11/19 PHP
php xml留言板 xml存储数据的简单例子
2009/08/24 PHP
php另类上传图片的方法(PHP用Socket上传图片)
2013/10/30 PHP
php带抄送和密件抄送的邮件发送方法
2015/03/20 PHP
PHP实现对png图像进行缩放的方法(支持透明背景)
2015/07/15 PHP
老生常谈PHP面向对象之解释器模式
2017/05/17 PHP
Code:findPosX 和 findPosY
2006/12/20 Javascript
不用ajax实现点击文字即可编辑的方法
2007/12/16 Javascript
页面中js执行顺序
2009/11/09 Javascript
jquery.validate使用攻略 第二部
2010/07/01 Javascript
加速IE的Javascript document输出的方法
2010/12/02 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
基于NodeJS的前后端分离的思考与实践(四)安全问题解决方案
2014/09/26 NodeJs
JS判断元素是否在数组内的实现代码
2016/03/30 Javascript
Javascript typeof与instanceof的区别
2016/10/18 Javascript
微信小程序(六):列表上拉加载下拉刷新示例
2017/01/13 Javascript
Node.js使用Express创建Web项目详细教程
2017/03/31 Javascript
AngularJS实现tab选项卡的方法详解
2017/07/05 Javascript
浅谈js的解析顺序 作用域 严格模式
2017/10/23 Javascript
移动端图片上传旋转、压缩问题的方法
2018/10/16 Javascript
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
2020/02/04 jQuery
Element Breadcrumb 面包屑的使用方法
2020/07/26 Javascript
如何在python中使用selenium的示例
2017/12/26 Python
运动检测ViBe算法python实现代码
2018/01/09 Python
对python中数组的del,remove,pop区别详解
2018/11/07 Python
Python 通过打码平台实现验证码的实现
2019/05/13 Python
python判断所输入的任意一个正整数是否为素数的两种方法
2019/06/27 Python
python字符串替换re.sub()实例解析
2020/02/09 Python
Python生成器next方法和send方法区别详解
2020/05/30 Python
python3排序的实例方法
2020/10/20 Python
Python监听键盘和鼠标事件的示例代码
2020/11/18 Python
用HTML5制作烟火效果的教程
2015/05/12 HTML / CSS
党组织领导班子整改方案
2014/10/25 职场文书
幼儿园小班个人总结
2015/02/12 职场文书
军训阅兵新闻稿
2015/07/17 职场文书
如何在pycharm中快捷安装pip命令(如pygame)
2021/05/31 Python