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 相关文章推荐
input 输入框内的输入事件详细分析
Mar 17 Javascript
jQuery 学习第五课 Ajax 使用说明
May 17 Javascript
利用jQuery接受和处理xml数据的代码(.net)
Mar 28 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现
Jan 23 Javascript
js使用栈来实现10进制转8进制与取除数及余数
Jun 11 Javascript
jQuery实现点击图片翻页展示效果的方法
Feb 16 Javascript
JS更改select内option属性的方法
Oct 14 Javascript
vue使用watch 观察路由变化,重新获取内容
Mar 08 Javascript
JavaScript事件发布/订阅模式原理与用法分析
Aug 21 Javascript
如何在基于vue-cli的项目自定义打包环境
Nov 10 Javascript
JS计算斐波拉切代码实例
Sep 12 Javascript
JavaScript交换两个变量方法实例
Nov 25 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 session文件独占锁引起阻塞问题解决方法
2015/05/12 PHP
PHP实现简单爬虫的方法
2015/07/29 PHP
MAC下通过改apache配置文件切换php多版本的方法
2017/04/26 PHP
php设计模式之观察者模式定义与用法经典示例
2019/09/19 PHP
IE不出现Flash激活框的小发现的js实现方法
2007/09/07 Javascript
模仿JQuery.extend函数扩展自己对象的js代码
2009/12/09 Javascript
禁用页面部分JavaScript方法的具体实现
2013/07/31 Javascript
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
jQuery通过控制节点实现仅在前台通过get方法完成参数传递
2015/02/02 Javascript
JavaScript中setTimeout和setInterval函数的传参及调用
2016/03/11 Javascript
谈一谈bootstrap响应式布局
2016/05/23 Javascript
微信小程序 视图容器组件的详解及实例代码
2017/01/19 Javascript
Vue.js实战之通过监听滚动事件实现动态锚点
2017/04/04 Javascript
详解angularjs中的隔离作用域理解以及绑定策略
2017/05/31 Javascript
python实现的希尔排序算法实例
2015/07/01 Python
django 常用orm操作详解
2017/09/13 Python
详谈Python高阶函数与函数装饰器(推荐)
2017/09/30 Python
Python中用psycopg2模块操作PostgreSQL方法
2017/11/28 Python
高效使用Python字典的清单
2018/04/04 Python
python使用Matplotlib画条形图
2020/03/25 Python
python中的json总结
2018/10/11 Python
python实现剪切功能
2019/01/23 Python
详解Python的数据库操作(pymysql)
2019/04/04 Python
python 普通克里金(Kriging)法的实现
2019/12/19 Python
django有外键关系的两张表如何相互查找
2020/02/10 Python
Python中用pyinstaller打包时的图标问题及解决方法
2020/02/17 Python
用Python进行websocket接口测试
2020/10/16 Python
如何强制垃圾回收
2015/10/06 面试题
教师的实习鉴定
2013/12/15 职场文书
毕业自荐信
2013/12/16 职场文书
单位实习证明怎么写
2014/01/17 职场文书
十一酒店活动方案
2014/02/20 职场文书
团日活动总结报告
2014/06/25 职场文书
党员自我评议个人对照检查材料
2014/09/16 职场文书
2014年店长工作总结
2014/11/17 职场文书
Python数据清洗工具之Numpy的基本操作
2021/04/22 Python