[转帖]关于javaScript的认识_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2876 | 回复: 0   主题: [转帖]关于javaScript的认识        下一篇 
smile
注册用户
等级:少校
经验:889
发帖:70
精华:2
注册:2013-4-22
状态:离线
发送短消息息给smile 加好友    发送短消息息给smile 发消息
发表于: IP:您无权察看 2013-4-23 10:20:07 | [全部帖] [楼主帖] 楼主

NaN与Infinity和-Infinity不同的是,NaN不会与任何数值变量相等,可以用javaScript专门提供的isNaN()函数来判断某个变量是否为NaN。

Undefined类型的值只有undefined一个,该值用于表示某个变量不存在,或者没有为其分配值,也用于表示对象的属性不存在。Null用于表示变量的值为空。

Undefined表示没有为变量设置值,而null表示将变量值设为空。

实际上,很多时候undefined和null本身就是相等,即null==unfefined将返回true,如查我们要精确区分null和undefined应该考虑使用精确等于符(===)

定义一个变量后,如果没有为该变量赋值,则该变量的值默认为undefined,这个值是系统默认分配的,该问对象并不存在属性时,该属性值也将返回undefined.

与null不同的是,undefined并不是javaScript的保留字,他是一个全属变量,某些浏览器可能不支持undefined值,此时可以在javascript脚本的第一行定义如下它。

复合类型是由多个基本数据类型组成的数据体,javascript中的复合类型大致上有如下三种:object对旬,Array数组,Function函数。

Javascript的数组中元素的类型可以不相同,定义一个数组有如下三种语法格式:

Var a=[3,5,6];
Var b=[];
Var c=new Array();


javaScript作为动态弱类型语言,其数组归纳起来有三个物征:

javascript数组的长度可变。

同一个数组里数组元素的类型可以互不相同

该问数组元素时不会产生数组越界,访问并未赋值的数组元素时,该元素的值为undefined.

Javascript的函数声明中,参数列表不需要数据类型说明,函数的返回值也不需要数据类型说明。

javaScript中的函数与java中的方法有如下区别:

javascript函数无须说明返回值类型,

javascript函数无须声明形参类型,

javascript中的函数可以独立存在,无须属于任何类。

Javascript函数必须使用function关键字定义。

赋值语句本身是有值的,赋值语句的值就是=右边的被赋的值,因此,赋值运算符支持连续赋值,通过使用多个赋值运算,可以一次为多个变量赋值。

Void运算符用于强行指定表达式不返回值如下:

A=void(b=5,c=7,d=56);


Typeof运算符用于判断某个变量的数据类型,可作为函数用,还可以作为一个运算符来有使用。与typeof类似的运算符还有instanceof,该运算符用于判断某个变量是否为指定类型的实例,如果是,则返回true ,否则返回false.

在javascript中,变量的作用域有全局(window对象)作用域和函数调用作用域。
以下变量具有全局作用域
1.所有在最外层定义(非函数体内定义)的变量都拥有全局作用域
2.所有末定义直接赋值的变量,系统会自动声明为拥有全局作用域的变量
3.所有window对象的属性拥有全局作用域

以下变量具有函数作/用域
1.在函数体内部用var定义的变量,这里要注意一点,只要是在函数里定义的变量,就算是在最后一句定义,该变量也拥有整个函数的作用域。

javaScript中的函数与java中的方法区别:

1、 javaScript函数无须声明返回值类型。

2、 javaScript函数无须声明形参类型。

3、 javaScript中函数可以独立存在,无须属于任何类。

4、 javaScript函数必须使用function关键字定义。

当++在操作数的右边时,先执行算术运算,然后对操作数执行自加运算,当++在操作数的左边时,先执行自加,然后再执行算术运算。

Void运算符用于强行指定表达式不返回值。

虽然语句块类似于一条单独的语句,但语句块后不需要以分号结束。

与java不同的是,javaScript的异常没有java那么丰富,javaScript的所有异常都是Error对象,当javaScript 需要抛出异常时,总是通过throw语句抛出Error对象,如下

Throw new Error(errorString);


可以在代码执行过程中抛出异常,也可以在函数定义中抛出异常,代码执行过程中,一旦遇到异常,立即寻找对应的异常捕捉块(catch块),如果没有对应的异常捕捉块,异常将传递给浏览器。

归纳起来,javascript异常机制与java异常机制存在如下区别:

1、 javaScript中只有一个异常类Error,无须在定义函数时声明抛出该异常,所以没有throws关键字。

2、 javaScript是弱类型语言,所以catch语句后括号里的异常实例无须声明类型。

3、 javaScript只有一个异常类,所以try块后最多只能有一个catch块。

4、 获取异常的描述信息是通过异常对象的message属性,而不是通过getMessage()方法。

javaScript是一代种基于对像的脚本语言,代码复用的单位是函数,但它的函数比结构化设计语言的函数功能更丰富。javaScript语言中函数就是一等公民,它可以独立存在,而且javaScript的函数完全可以作瓬为一个类来使用(而且它还是该类唯一的构造器),因此函数的功能非常丰富

函数可以有返回值,也可以没有返回值。函数的返回值使用return语句返回。

javaScript提供了Function类,该类也可以用于定义函数,Function的构造器的参数个数可以不受限制,Function可以接受一系列的字符串参数,其中最后一个参数是函数的执行体,执行体的各语句以分号隔开,而前面的各字符串参数则是函数的参数。

还有一种定义匿名函数的方式,可以无须使用Function类,而是直接使用function类键字。




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论