JavaScript1.6新特性系列之 forEach
总结:数组中的每一项多按照指定的方法执行。
Method of Array
Implemented in |
JavaScript 1.6 |
ECMAScript Edition |
ECMAScript 5th Edition |
语法:
array.forEach(callback[,thisArg]);
参数:
- callback ---每一项指定的执行方法
- thisArg ---当callback方法执行时候的this对象
通用性:
forEach 是加入ECMA-262标准里面的,可能在别的标准里面没有它。下面的代码你可以放在你的脚本前面,它可以支持你使用forEach.
- if ( !Array.prototype.forEach ) {
-
- Array.prototype.forEach = function( callback, thisArg ) {
-
- var T, k;
-
- if ( this == null ) {
- throw new TypeError( " this is null or not defined" );
- }
-
-
- var O = Object(this);
-
-
-
- var len = O.length >>> 0;
-
-
-
- if ( {}.toString.call(callback) != "[object Function]" ) {
- throw new TypeError( callback + " is not a function" );
- }
-
-
- if ( thisArg ) {
- T = thisArg;
- }
-
-
- k = 0;
-
-
- while( k < len ) {
-
- var kValue;
-
-
-
-
-
-
- if ( k in O ) {
-
-
- kValue = O[ k ];
-
-
-
- callback.call( T, kValue, k, O );
- }
-
- k++;
- }
-
- };
- }
举例:
[10,20,30,40].forEach(function(elem,index){
console.log('index='+index+"&elem="+elem);
});
//输出
index=0&elem=10
index=1&elem=20
index=2&elem=30
index=3&elem=40
浏览器兼容性
- 大小: 163 KB
- 大小: 16.4 KB
分享到:
相关推荐
JavaScript 1.6 引入了几个新的Array 方法,具体的介绍见:New in JavaScript 1.6 。这些方法已经被写进了ECMA262 V5。现代浏览器(IE9/Firefox/Safari/Chrome/Opera)都已经支持,但IE6/7/8不支持。jquery的工具...
总结来说,JDK 1.6_64-bit是一个在特定历史时期对Java和Android开发至关重要的工具包,它包含了一系列编程工具和库,支持了当时的许多关键特性。然而,随着时间的发展,为了保持代码的现代性和安全性,应考虑升级到...
在这个版本中,引入了一些新特性,例如增强的for循环(foreach)、静态导入、泛型的改进、枚举的改进以及NIO.2(非阻塞I/O)等,这些都提高了Java程序员的生产力和代码质量。 **JScript**是微软对ECMAScript的实现...
### JDK 1.6新特性 1. **增强的for循环(foreach)**:引入了增强的for循环语法,简化了遍历集合的操作。 2. **泛型**:允许在类型声明中使用类型参数,提高了代码的类型安全性。 3. **静态导入**:允许静态成员...
**JDK 1.6主要特性** 1. **泛型(Generics)**:JDK 1.6引入了泛型,这是一种编译时类型安全的机制,允许在类、接口和集合中使用参数化类型,增强了代码的重用性和可读性。 2. **增强的for循环(Enhanced For Loop...
本资源包含针对Java开发者的JDK 1.5和1.6版本的API文档,以及JavaScript 5的文档,同时还有关于HTML的基础信息。以下是对这些文档的详细解析: **JDK 1.5 API中文版**: 这个`.chm`文件是Java Development Kit 1.5...
JDK 1.6引入了一些重要的新特性,例如: 1. **改进的泛型**: 泛型的使用更加灵活,可以用于数组、匿名类和异常声明。 2. **增强的for循环(Enhanced for Loop)**: 也称为foreach循环,简化了遍历集合和数组的操作...
**注意**:`forEach`方法与JavaScript 1.6中的`Array.forEach()`有一个显著的不同之处,那就是它会遍历稀疏数组,并将稀疏数组中的空位传递给回调函数。而JavaScript 1.6的`Array.forEach()`则会跳过稀疏数组中的...
JDK 1.6相对于之前的版本,引入了一些重要的新特性和增强,如: 1. **泛型**: 泛型增强了类型安全,允许在编译时检查集合中的元素类型,避免了类型转换异常。 2. **枚举**: 作为常量的容器,枚举类可以拥有方法和...
在Dojo 1.6版本中,DOM操作是其核心特性之一,它允许开发者高效地创建、修改和管理HTML元素。以下是对Dojo 1.6 DOM相关操作的详细说明: 1. **dojo.query**: 这是Dojo提供的一个强大选择器,类似于jQuery的`$`函数...
随着技术的发展,JavaScript经历了多个版本的更新,每个版本都引入了新的特性和功能。在给定的代码中,主要涉及到的是通过检测浏览器对特定JavaScript方法的支持来判断其JavaScript引擎的版本。 首先,让我们分析...
【张孝祥培训教程文档和源码】是一个针对Java初学者和进阶者的教程资源,主要涵盖传智播客公开课中的教学内容,特别是围绕JDK 1.6版本的新特性和基础加强部分。这个压缩包包含两个子文件,分别是"Java基础加强代码....
在日常开发过程中,JavaScript作为前端开发的核心语言之一,其灵活多变的特性让开发者能够实现各种复杂的功能。对于新手乃至中级开发者而言,掌握一些实用的小技巧可以极大提高编码效率与代码质量。本文将详细介绍几...
此外,如果宿主环境支持JavaScript 1.6引入的新方法(如`forEach`、`map`和`reduce`),Underscore会优先使用这些原生方法,否则使用自己实现的版本。 `_`函数是Underscore的主要接口,它接受一个对象`obj`并返回一...
此外,如果宿主环境支持JavaScript 1.6的新特性,如`forEach`、`map`、`reduce`等,Underscore会优先使用它们,否则将自行实现。 Underscore的核心是其对象式的调用方式,通过`_`函数接收一个对象并返回一个包裹器...
- **新特性**:加强了对JavaScript 1.6和WHATWG 1.0标准的支持,提高了兼容性和稳定性。 - **应用场景**:适用于需要遵循最新Web标准的应用场景,确保应用在不同浏览器中的表现一致性。 #### 三、实用方法 ##### 1...
1. **Lambda表达式**:这是JDK 1.8中最显著的新特性之一,它提供了一种简洁的语法来表示匿名函数,使得代码更加简洁、可读性更强。Lambda表达式可以作为参数传递,也可以作为方法的返回值,极大地简化了对集合的处理...