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 相关文章推荐
判断是否输入完毕再激活提交按钮
Jun 26 Javascript
JavaScript高级程序设计 阅读笔记(二十) js错误处理
Aug 14 Javascript
javascript将浮点数转换成整数的三个方法
Jun 23 Javascript
js控制输入框获得和失去焦点时状态显示的方法
Jan 30 Javascript
js实现页面跳转的几种方法小结
May 16 Javascript
JavaScript的==运算详解
Jul 20 Javascript
AngularJs基本特性解析(一)
Jul 21 Javascript
JS实现手写parseInt的方法示例
Sep 24 Javascript
vue实现验证码按钮倒计时功能
Apr 10 Javascript
vue中使用微信公众号js-sdk踩坑记录
Mar 29 Javascript
vue实现路由懒加载及组件懒加载的方式
Jun 11 Javascript
Node.js API详解之 zlib模块用法分析
May 19 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 Mysql编程之高级技巧
2008/08/27 PHP
PHP中substr函数字符串截取用法分析
2016/01/07 PHP
ExtJs grid行 右键菜单的两种方法
2010/06/19 Javascript
js 判断文件类型并控制表单提交示例代码
2013/11/14 Javascript
JS图片定时翻滚效果实现方法
2016/06/21 Javascript
jQuery实现智能判断固定导航条或侧边栏的方法
2016/09/04 Javascript
JS移动端/H5同时选择多张图片上传并使用canvas压缩图片
2017/06/20 Javascript
Vue+Element使用富文本编辑器的示例代码
2017/08/14 Javascript
JavaScript实现百度搜索框效果
2020/03/26 Javascript
Vue实现数据表格合并列rowspan效果
2020/11/30 Javascript
vue.js实现数据库的JSON数据输出渲染到html页面功能示例
2019/08/03 Javascript
js重写alert事件(避免alert弹框标题出现网址)
2020/12/04 Javascript
Python urlopen 使用小示例
2008/09/06 Python
Python中xrange与yield的用法实例分析
2017/12/26 Python
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
2019/04/26 Python
详解pytorch 0.4.0迁移指南
2019/06/16 Python
pandas.read_csv参数详解(小结)
2019/06/21 Python
django之使用celery-把耗时程序放到celery里面执行的方法
2019/07/12 Python
Python 动态导入对象,importlib.import_module()的使用方法
2019/08/28 Python
python模块导入的方法
2019/10/24 Python
python DataFrame转dict字典过程详解
2019/12/26 Python
python实现的分层随机抽样案例
2020/02/25 Python
Python tcp传输代码实例解析
2020/03/18 Python
python文件编写好后如何实践
2020/07/07 Python
python实现计算器简易版
2020/12/17 Python
使用css3制作动感导航条示例
2014/01/26 HTML / CSS
海信商城:海信电视、科龙空调、容声冰箱官方专卖
2017/02/07 全球购物
意大利单身交友网站:Meetic
2020/07/12 全球购物
学校师德师风自我剖析材料
2014/09/29 职场文书
工作收入证明范本
2015/06/12 职场文书
保险公司岗前培训工作总结
2015/10/24 职场文书
jdbc使用PreparedStatement批量插入数据的方法
2021/04/27 MySQL
Django实现翻页的示例代码
2021/05/24 Python
基于Redis6.2.6版本部署Redis Cluster集群的问题
2022/04/01 Redis
详解SQL的窗口函数
2022/04/21 Oracle
如何解决flex文本溢出问题小结
2022/07/15 HTML / CSS