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鼠标和滚轮事件
Jun 27 Javascript
jQuery实现列表自动循环滚动鼠标悬停时停止滚动
Sep 06 Javascript
JS对文本框值的判断示例
Mar 10 Javascript
jquery序列化表单去除指定元素示例代码
Apr 10 Javascript
javascript实现的HashMap类代码
Jun 27 Javascript
node.js中的fs.readlink方法使用说明
Dec 17 Javascript
AngularJs验证重复密码的方法(两种)
Nov 25 Javascript
vue2实现数据请求显示loading图
Nov 28 Javascript
支付宝小程序自定义弹窗dialog插件的实现代码
Nov 30 Javascript
bootstrap与pagehelper实现分页效果
Dec 29 Javascript
openlayers4实现点动态扩散
Aug 17 Javascript
微信小程序实现拍照和相册选取图片
May 09 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
菜鸟修复电子管记
2021/03/02 无线电
php上传、管理照片示例
2006/10/09 PHP
PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法
2017/08/11 PHP
PHP实现的大文件切割与合并功能示例
2018/04/10 PHP
php+laravel依赖注入知识点总结
2019/11/04 PHP
JS URL传中文参数引发的乱码问题
2009/09/02 Javascript
让图片旋转任意角度及JQuery插件使用介绍
2013/03/20 Javascript
jQuery之日期选择器的深入解析
2013/06/19 Javascript
JavaScript中的函数嵌套使用
2015/06/04 Javascript
javascript实现相同事件名称,不同命名空间的调用方法
2015/06/26 Javascript
js中遍历对象的属性和值的方法
2016/07/27 Javascript
js实现图片缓慢放大缩小效果
2016/08/02 Javascript
js实现随机抽选效果、随机抽选红色球效果
2017/01/13 Javascript
利用NPM淘宝的node.js镜像加速nvm
2017/03/27 Javascript
利用forever和pm2部署node.js项目过程
2017/05/10 Javascript
jQuery事件对象的属性和方法详解
2017/09/09 jQuery
VUE饿了么树形控件添加增删改功能的示例代码
2017/10/17 Javascript
解决微信小程序调用moveToLocation失效问题【超简单】
2019/04/12 Javascript
微信小程序云开发修改云数据库中的数据方法
2019/05/18 Javascript
webpack 如何解析代码模块路径的实现
2019/09/04 Javascript
vue element ui validate 主动触发错误提示操作
2020/09/21 Javascript
[02:58]献给西雅图的情书_高清
2014/05/29 DOTA
35个Python编程小技巧
2014/04/01 Python
jupyter notebook引用from pyecharts.charts import Bar运行报错
2020/04/23 Python
PyQt5每天必学之QSplitter实现窗口分隔
2018/04/19 Python
Django添加sitemap的方法示例
2018/08/06 Python
Pytorch之view及view_as使用详解
2019/12/31 Python
Django model重写save方法及update踩坑详解
2020/07/27 Python
python实现经纬度采样的示例代码
2020/12/10 Python
DHC中国官方购物网站:日本通信销售No.1化妆品
2016/08/20 全球购物
加拿大女鞋品牌:ALDO
2016/11/13 全球购物
大韩航空官方网站:Korean Air
2017/10/25 全球购物
一些高难度的SQL面试题
2016/11/29 面试题
主持人婚宴答谢词
2014/01/28 职场文书
优秀的应届生自荐信
2014/05/23 职场文书
redis缓存存储Session原理机制
2021/11/20 Redis