数组Array在JavaScript中是一个非常强大的对象,而在JavaScript1.6中,Array则成为该版本更新的重头戏,下面,我们来看一下W3C Group给我们带来的关于JavaScript1.6的新特性描述!JavaScript1.6带来了以下一些新的特性,包括:E4X(ECMAScript for XML),新的Array方法,及数组和字符串泛型。
E4XECMAScript for XML (E4X) 是用于创建和处理JavaScript正文中的XML内容的强大工具。我们将继续改进对E4X的支持,包括增加与现有DOM的透明整合,但创建基于XML 之Web应用程序的开发人员已经可以从Firefox 1.5对E4X的支持中获益。您在使用E4X的同时仍旧可以使用标准MIME类型:<script type="text/javascript">不过,按照E4X语法书写的代码可能与现有的为兼容不支持JavaScript浏览器而加入的HTML注释(<!--...-->)冲突,甚至,与近年来更为流行的XML CDATA段落标记(<![CDATA[...]]>)也可能冲突,不兼容 ,XML CDATA是为了容许"<" 与 ">"出现在脚本中,(这并不符合HTML规范)。若您读到无法解释或异常出现的语法错误,可以尝试向script标记的MIME type类型属性中添加"; e4x=1":<script type="text/javascript; e4x=1">注意扩展的脚本总是将HTML注释视为E4X合法字符,也就是说,"e4x=1"属性是默认的。
数组扩展七个新的Array方法可以分成两类:项(item)的定位方法和迭代方法。 项定位方法为: * indexOf() - 返回指定项首次出现的索引。
* lastIndexOf() - 返回指定项最后一次出现的索引。迭代方法包括: * every() - 在数组中的每个项上运行一个函数,若所有结果都返回真值,此方法亦返回真值。
* filter() - 在数组中的每个项上运行一个函数,并将函数返回真值的项作为数组返回。
* forEach() - 在数组中的每个项上运行一个函数。
* map() - 在数组中的每个项上运行一个函数,并将全部结果作为数组返回。
* some() - 在数组中的每个项上运行一个函数,若存在任意的结果返回真,则返回真值。
数组及字符串泛型您有时也许会想在字符串类型上使用数组拥有的方法。这样做的话,您实际上将字符串视如一个字符数组。例如,想要检查变量str中是否每个字符都是字母,您可以这样写:function isLetter(character) {
return (character >= "a" && character <= "z");
}if (Array.prototype.every.call(str, isLetter))
alert("The string '" + str + "' contains only letters!");这种写法有点浪费,故JavaScript 1.6引入了泛型的简洁写法:if (Array.every(str, isLetter))
alert("The string '" + str + "' contains only letters!");类似地,您可以简单地将对任何对象应用字符串方法:var num = 15;
alert(String.replace(num, /5/, '2'));
相信大家对javascript1.6的这些新特性一定有些心动了,W3C Group将继续为大家带来javascript1.7的新特性介绍!
E4XECMAScript for XML (E4X) 是用于创建和处理JavaScript正文中的XML内容的强大工具。我们将继续改进对E4X的支持,包括增加与现有DOM的透明整合,但创建基于XML 之Web应用程序的开发人员已经可以从Firefox 1.5对E4X的支持中获益。您在使用E4X的同时仍旧可以使用标准MIME类型:<script type="text/javascript">不过,按照E4X语法书写的代码可能与现有的为兼容不支持JavaScript浏览器而加入的HTML注释(<!--...-->)冲突,甚至,与近年来更为流行的XML CDATA段落标记(<![CDATA[...]]>)也可能冲突,不兼容 ,XML CDATA是为了容许"<" 与 ">"出现在脚本中,(这并不符合HTML规范)。若您读到无法解释或异常出现的语法错误,可以尝试向script标记的MIME type类型属性中添加"; e4x=1":<script type="text/javascript; e4x=1">注意扩展的脚本总是将HTML注释视为E4X合法字符,也就是说,"e4x=1"属性是默认的。
数组扩展七个新的Array方法可以分成两类:项(item)的定位方法和迭代方法。 项定位方法为: * indexOf() - 返回指定项首次出现的索引。
* lastIndexOf() - 返回指定项最后一次出现的索引。迭代方法包括: * every() - 在数组中的每个项上运行一个函数,若所有结果都返回真值,此方法亦返回真值。
* filter() - 在数组中的每个项上运行一个函数,并将函数返回真值的项作为数组返回。
* forEach() - 在数组中的每个项上运行一个函数。
* map() - 在数组中的每个项上运行一个函数,并将全部结果作为数组返回。
* some() - 在数组中的每个项上运行一个函数,若存在任意的结果返回真,则返回真值。
数组及字符串泛型您有时也许会想在字符串类型上使用数组拥有的方法。这样做的话,您实际上将字符串视如一个字符数组。例如,想要检查变量str中是否每个字符都是字母,您可以这样写:function isLetter(character) {
return (character >= "a" && character <= "z");
}if (Array.prototype.every.call(str, isLetter))
alert("The string '" + str + "' contains only letters!");这种写法有点浪费,故JavaScript 1.6引入了泛型的简洁写法:if (Array.every(str, isLetter))
alert("The string '" + str + "' contains only letters!");类似地,您可以简单地将对任何对象应用字符串方法:var num = 15;
alert(String.replace(num, /5/, '2'));
相信大家对javascript1.6的这些新特性一定有些心动了,W3C Group将继续为大家带来javascript1.7的新特性介绍!
解决方案 »
- js校验字符长度(包括中文和特殊字符),有意者进,满意答案,立即结贴给分!
- alert 的内容太多,使得 alert 框超过显示器屏幕,下面不分内容就看不到了,这个框又不能缩小,请问如何显示
- win media player 10在IE中能显示出来,在firefox2.0却提示安装插件,这是为什么?
- 怎么样计算某个日期是这一年中的第几周??急。。
- 大家来看看这个弹出窗口特效
- javascript 中怎么输出自动加上本地站点后的url啊?
- 讨论:js可以接到url的参数吗?
- 请问js能否实现显示多国时间?
- 如何动态设定一个table中的某一列安小数点(.)对齐?
- 我想实现这样的功能,可以吗?
- 关于使用innerHTML替换的问题(在线等.....)
- js如何实现用键盘选中表格
Lz既是高人,是大斑,象这样的帖子应该多发才多呀
散代码,经验可比散分强大的多
不过E4X倒是蛮期待的
地址: https://developer.mozilla.org/cn/JavaScript
中文版的哦
[color=#FF0000] 好好学习,天天向上![/color]