原文地址:http://blog.csdn.net/tmeteor/archive/2009/09/15/4554409.aspx
AS中:
其实Null、NaN和undefined都是变量的默认初始值。变量类型不同,系统给与的初始值就不同:
int,uint - 0
Boolean
- false
Number - NaN
String,Array,Object - null
未指定变量类型 -
undefined
JS中:
1.类型分析:
js中的数据类型有
undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型。
var a1;
var
a2 = true;
var a3 = 1;
var a4 = "Hello";
var a5 = new
Object();
var a6 = null;
var a7 = NaN;
var a8 = undefined;
alert(typeof a); //显示"undefined"
alert(typeof
a1); //显示"undefined"
alert(typeof a2); //显示"boolean"
alert(typeof
a3); //显示"number"
alert(typeof a4); //显示"string"
alert(typeof
a5); //显示"object"
alert(typeof a6); //显示"object"
alert(typeof a7);
//显示"number"
alert(typeof a8); //显示"undefined"
从上面的代码中可以看出未定义的值和定义未赋值的为
undefined,null是一种特殊的object,NaN是一种特殊的number。
2.比较运算
var a1; //a1的值为undefined
var
a2 = null;
var a3 = NaN;
alert(a1 == a2); //显示"true"
alert(a1
!= a2); //显示"false"
alert(a1 == a3); //显示"false"
alert(a1
!= a3); //显示"true"
alert(a2 == a3); //显示"false"
alert(a2
!= a3); //显示"true"
alert(a3 == a3); //显示"false"
alert(a3
!= a3); //显示"true"
从上面的代码可以得出结论:(1)undefined与null是相等;
(2)NaN与任何值都不相等,与自己也不相等。
JavaScript undefined 属性
定义和用法
undefined 属性用于存放 JavaScript 的
undefined 值。
语法
undefined
说明
无法使用 for/in 循环来枚举 undefined
属性,也不能用 delete 运算符来删除它。
undefined 不是常量,可以把它设置为其他值。
当尝试读取不存在的对象属性时也会返回 undefined。
提示和注释
< 值等价于 undefined 运算符认为
运算来测试某个值是否是未定义的,因为="=" ="==">
< 表示无值,而>
实例
在本例中,我们将检测两个变量中未定义的一个:
<script type="text/javascript">
var t1=""
var t2
if (t1===undefined) {document.write("t1 is undefined")}
if (t2===undefined) {document.write("t2 is undefined")}
</script>
输出:
t2 is undefined
[补充]
Null 数据类型
在 Jscript 中数据类型 null 只有一个值:null。关键字 null 不能用作函数或变量的名称。
包含 null 的变量包含“无值”或“无对象”。换句话说,该变量没有保存有效的数、字符串、boolean、数组或对象。可以通过给一个变量赋 null 值来清除变量的内容。
请注意,在 Jscript 中,null 与 0 不相等(与在 C 和 C++ 中不同)。同时应该指出的是,Jscript中 typeof 运算符将报告 null 值为 Object 类型,而非类型 null。这点潜在的混淆是为了向下兼容。
Undefined 数据类型
如下情况使返回 undefined 值:
对象属性不存在,
声明了变量但从未赋值。
注意不能通过与 undefined 做比较来测试一个变量是否存在,虽然可以检查它的类型是否为“undefined”。在以下的代码范例中,假设程序员想测试是否已经声明变量 x :
// 这种方法不起作用
if (x == undefined)
// 作某些操作
// 这个方法同样不起作用- 必须检查
// 字符串 "undefined"
if (typeof(x) == undefined)
// 作某些操作
// 这个方法有效
if (typeof(x) == "undefined")
// 作某些操作
考虑将 undefined 值与null做比较。
someObject.prop == null;
如下情况时,比较的结果为 true,
如果属性 someObject.prop 包含 null 值,
如果属性 someObject.prop 不存在。
要检查一个对象属性是否存在,可以使用新的 in 运算符:
if ("prop" in someObject)
// someObject 有属性 'prop'
在JavaScript中,null与undefined一度使人迷惑。下面的分析,有利于你更清晰的认知它(或者让你更迷惑):
- null是关键字;undefined是Global对象的一个属性
- null是对象(空对象, 没有任何属性和方法);undefined是undefined类型的值。试试下面的代码:
document.writeln(typeof null); //return object
document.writeln(typeof undefined); //return undefined
- 对象模型中,所有的对象都是Object或其子类的实例,但null对象例外:
document.writeln(null instanceof Object); //return false
- null“等值(==)”于undefined,但不“全等值(===)”于undefined:
document.writeln(null == undefined); //return true
document.writeln(null === undefined); //return false
- 运算时null与undefined都可以被类型转换为false,但不等值于false:
document.writeln(!null, !undefined); //return true,true
document.writeln(null==false); //return false
document.writeln(undefined==false); //return false
分享到:
相关推荐
—> java(null) —> NaN —> null”这一主题,主要关注如何处理在ActionScript中的NaN(Not-a-Number)值在Java中转换为null的情况,以及这种转换可能引发的问题和解决方案。 首先,NaN是ActionScript中的一个特殊...
JavaScript 和 ActionScript 是两种在 Web 开发中广泛使用的脚本语言,它们分别在浏览器环境(JavaScript)和 Adobe Flash 平台(ActionScript)上运行。虽然它们语法上有许多相似之处,但它们的应用场景和交互方式...
JavaScript与ActionScript3之间的交互主要基于两种技术:Flash Player的ExternalInterface API和浏览器的跨文档消息传递(Cross-document messaging,CDM)。ExternalInterface API允许AS3代码暴露方法给JavaScript...
JavaScript 和 ActionScript 3.0 是两种不同的编程语言,它们分别在 Web 和 Flash 平台中发挥重要作用。在现代Web开发中,有时我们需要在浏览器端的JavaScript与Flash内容(使用ActionScript编写)之间进行交互,以...
其中,ActionScript与JavaScript是两种常用的语言,它们分别应用于Adobe Flash和网页环境中。虽然这两种语言有着不同的应用场景和发展背景,但在某些情况下,为了实现更复杂的功能,开发者可能需要让它们之间进行...
JavaScript 和 ActionScript 之间的通信是跨平台开发中的一个重要概念,特别是在构建富互联网应用程序(RIA)时,例如使用 Adobe Flash 平台。这两种语言虽然在不同的环境中运行,但可以通过多种技术实现交互,为...
在Web开发中,ActionScript和JavaScript是两种不同的脚本语言,分别用于Adobe Flash(ActionScript)和HTML页面(JavaScript)的交互。ActionScript主要用于创建富媒体内容,而JavaScript则广泛应用于网页动态效果和...
ActionScript与JavaScript在教学中的相互调用 ActionScript是Flash中的内置编程语言,而JavaScript是网页浏览器采用的网页文本编程语言。虽然这两种编程语言不同,但是如果在教学中将二者结合起来相互调用,却可以...
- **从JavaScript调用ActionScript**:允许JavaScript访问Flash影片中的对象和方法,从而实现对Flash影片的控制。 #### 3. 实现方法 - **在Flash中调用JavaScript**:可以通过`getURL()`函数来实现。该函数主要...
当时Netscape的JavaScript使其在与ie的浏览器大战中独占鳌头,而后ie创建了jscript应对Netscape的JavaScript,而事实上jscript基本上抄袭的JavaScript,这也是微软一直备受诟病的一件事,jscript与JavaScript有一些...
JavaScript 和 ActionScript 是两种在 Web 开发中常用于交互的脚本语言,分别在浏览器的前端(JavaScript)和 Adobe Flash Player(ActionScript)中运行。本文将详细介绍如何实现在 Flash 内容(ActionScript)与...
JavaScript是一种广泛使用的客户端脚本语言,常用于网页动态效果和与用户交互。JavaScript的基础包括变量、数据类型、运算符、流程控制(条件语句、循环)、函数、对象和数组。进阶内容涵盖DOM操作(文档对象模型,...
推荐对所有JavaScript与ActionScript之间的通信使用ExternalInterface。 在HTML页中使用JavaScript,可以调用FlashPlayer中的ActionScript函数。ActionScript函数可以返回一个值,JavaScript会立即接收它作为该调用...
5. **时间轴和帧脚本**:ActionScript可以与时间轴结合使用,编写帧脚本控制动画和交互。 6. **ActionScript与XML/SWF/AAM整合**:ActionScript可以处理XML数据,与SWF(Shockwave Flash)文件进行交互,以及使用...
1. **基础语法**:包括变量、数据类型(如字符串、数值、布尔值、null和undefined)、运算符、流程控制(条件语句、循环结构)以及函数的使用。 2. **面向对象编程**:ActionScript 3.0完全支持面向对象编程,包括...
这些文件包含了多个重要的IT技术领域的开发文档,涵盖了从前端到后端的重要编程语言和技术,包括JavaScript、ActionScript 3.0、CSS2、DHTML、JDOM以及jQuery API。接下来,我们将逐一深入探讨这些知识点。 1. **...
ActionScript 3.0 语言和组件参考概述Adobe Flex 2 语言参考ActionScript 3.0 语言和组件参考是适用于 Flash® Player 应用程序编程接口 (API) 的参考手册。 Adobe Flex 2 语言参考ActionScript 3.0 语言和组件...
而 ActionScript3,特别是与 Flash Player 结合使用时,操作的是 DisplayObject,这是 Adobe Flex 和 Flash 平台中的对象模型,主要用于动画、图形和交互式内容的创建。 其次,运行环境的差异也是关键。JavaScript ...
1. XML和JSON:ActionScript提供XML和JSON对象来处理这两种数据格式,方便与服务器进行数据交换。 2. URLLoader和URLRequest:用于加载网络资源,如文本、图像、XML等。 七、声音和视频 1. Sound和Video类:分别...