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 相关文章推荐
写出更好的JavaScript之undefined篇(上)
Nov 22 Javascript
File, FileReader 和 Ajax 文件上传实例分析(php)
Apr 27 Javascript
jquery 鼠标滑动显示详情应用示例
Jan 24 Javascript
JavaScript中定时控制Throttle、Debounce和Immediate详解
Nov 17 Javascript
微信小程序开发(一) 微信登录流程详解
Jan 11 Javascript
webpack实现热加载自动刷新的方法
Jul 30 Javascript
AngularJS实现图片上传和预览功能的方法分析
Nov 08 Javascript
服务端预渲染之Nuxt(使用篇)
Apr 08 Javascript
了解前端理论:rscss和rsjs
May 23 Javascript
原生js通过一行代码实现简易轮播图
Jun 05 Javascript
Node配合WebSocket做多文件下载以及进度回传
Nov 07 Javascript
微信小程序开发(三):返回上一级页面并刷新操作示例【页面栈】
Jun 01 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
YiiFramework入门知识点总结(图文教程)
2015/12/28 PHP
PHP使用Nginx实现反向代理
2017/09/20 PHP
根据分辨率不同,调用不同的css文件
2006/07/07 Javascript
用javascript动态调整iframe高度的方法
2007/03/06 Javascript
JavaScript Prototype对象
2009/01/07 Javascript
JavaScript入门教程(3) js面向对象
2009/01/31 Javascript
JQUERY对单选框(radio)操作的小例子
2013/04/25 Javascript
JavaScript字符串对象slice方法入门实例(用于字符串截取)
2014/10/16 Javascript
jQuery应用之jQuery链用法实例
2015/01/19 Javascript
JavaScript日期类型的一些用法介绍
2015/03/02 Javascript
深入理解JavaScript系列(41):设计模式之模板方法详解
2015/03/04 Javascript
简单谈谈javascript中的变量、作用域和内存问题
2015/08/30 Javascript
用js动态添加html元素,以及属性的简单实例
2016/07/19 Javascript
基于NodeJS+MongoDB+AngularJS+Bootstrap开发书店案例分析
2017/01/12 NodeJs
Angular1.x复杂指令实例详解
2017/03/01 Javascript
Angular使用$http.jsonp发送跨站请求的方法
2017/03/16 Javascript
关于bootstrap日期转化,bootstrap-editable的简单使用,bootstrap-fileinput的使用详解
2017/05/12 Javascript
Angular.js前台传list数组由后台spring MVC接收数组示例代码
2017/07/31 Javascript
js微信应用场景之微信音乐相册案例分享
2017/08/11 Javascript
mpvue跳转页面及注意事项
2018/08/03 Javascript
Vue v-model组件封装(类似弹窗组件)
2020/01/08 Javascript
在Vue中创建可重用的 Transition的方法
2020/06/02 Javascript
原生小程序封装跑马灯效果
2020/10/21 Javascript
用Python编写一个简单的俄罗斯方块游戏的教程
2015/04/03 Python
在Python的Django框架中生成CSV文件的方法
2015/07/22 Python
python进行文件对比的方法
2018/12/24 Python
浅谈Python中函数的定义及其调用方法
2019/07/19 Python
Python读写压缩文件的方法
2020/07/30 Python
Python压缩模块zipfile实现原理及用法解析
2020/08/14 Python
详解用python -m http.server搭一个简易的本地局域网
2020/09/24 Python
CSS3实现swap交换动画
2016/01/19 HTML / CSS
PHP笔试题
2012/02/22 面试题
公司周年庆活动方案
2014/08/25 职场文书
刑事上诉状(无罪)
2015/05/23 职场文书
2015年库房管理工作总结
2015/10/14 职场文书
四则混合运算教学反思
2016/02/23 职场文书