色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

javascript中的each方法

JavaScript中的each方法是一個(gè)非常有用的函數(shù),它可以用來(lái)遍歷數(shù)組或?qū)ο?,并?zhí)行一些操作。本文將介紹each方法的基本用法、語(yǔ)法結(jié)構(gòu)以及常見(jiàn)的應(yīng)用場(chǎng)景。
在JavaScript中,each方法常常被稱為forEach方法。其基本語(yǔ)法如下:
javascript
array.forEach(function(currentValue, index, arr), thisValue)

其中,array代表待遍歷的數(shù)組;currentValue代表數(shù)組中當(dāng)前遍歷的元素;index代表該元素在數(shù)組中的序號(hào);arr代表所遍歷的數(shù)組本身。thisValue為可選參數(shù),表示在執(zhí)行回調(diào)函數(shù)時(shí)的上下文對(duì)象。
例如,我們可以使用以下代碼來(lái)遍歷一個(gè)數(shù)組并打印出其中的所有元素:
javascript
const arr = [1, 2, 3, 4, 5];
arr.forEach(function(element) {
console.log(element);
});

在上面的代碼中,forEach方法會(huì)對(duì)數(shù)組中的每一個(gè)元素都執(zhí)行一次回調(diào)函數(shù),將其作為參數(shù)傳入。在本例中,回調(diào)函數(shù)只有一個(gè)參數(shù),即當(dāng)前遍歷的元素,其余參數(shù)都沒(méi)有用到。
除了遍歷數(shù)組外,forEach方法還可以用來(lái)遍歷對(duì)象。對(duì)于對(duì)象,回調(diào)函數(shù)的參數(shù)結(jié)構(gòu)與數(shù)組略有不同。以下代碼演示了如何遍歷對(duì)象:
javascript
const obj = {a: 1, b: 2, c: 3};
Object.keys(obj).forEach(function(key) {
console.log(key + ': ' + obj[key]);
});

在上面的代碼中,我們使用了Object.keys方法來(lái)獲取對(duì)象的所有屬性名,并將它們封裝成數(shù)組。然后,我們使用forEach方法來(lái)遍歷該數(shù)組,并將每一個(gè)屬性名作為回調(diào)函數(shù)的參數(shù)傳入。在回調(diào)函數(shù)中,我們使用方括號(hào)語(yǔ)法來(lái)獲取對(duì)象中對(duì)應(yīng)屬性的值,最終將屬性名及其對(duì)應(yīng)值打印成一行字符串。
除了上述的基本用法外,forEach方法還可以根據(jù)需要進(jìn)行一些擴(kuò)展。以下是一些常見(jiàn)的擴(kuò)展用法。
### 1. 給數(shù)組添加屬性
我們可以使用forEach方法來(lái)為數(shù)組中每一個(gè)元素添加一個(gè)屬性或方法。例如:
javascript
const arr = [1, 2, 3];
arr.forEach(function(element, index, array) {
array[index] = element * 2;
array.sum = function() {
return array.reduce(function(a, b) {
return a + b;
});
};
});
console.log(arr.sum()); // 12

在上面的代碼中,我們先使用forEach方法遍歷數(shù)組,并將每一個(gè)元素的值乘以2。然后,我們?yōu)樵摂?shù)組添加了一個(gè)名為sum的屬性,它是一個(gè)函數(shù),用于計(jì)算數(shù)組中所有元素的和。
### 2. 強(qiáng)制返回值
forEach方法本身不返回任何值,但是我們可以通過(guò)回調(diào)函數(shù)的返回值來(lái)實(shí)現(xiàn)一些特殊的用途。例如,我們可以通過(guò)返回false來(lái)中斷遍歷,或者通過(guò)返回一個(gè)新數(shù)組來(lái)替換原數(shù)組。以下是一些示例代碼:
javascript
const arr = [1, 2, 3];
arr.forEach(function(element, index, array) {
if (element === 2) {
return false;
}
array[index] = element * 2;
});
console.log(arr); // [2, 4, 3]
const arr = [1, 2, 3];
const newArr = [];
arr.forEach(function(element, index, array) {
newArr.push(element * 2);
});
console.log(newArr); // [2, 4, 6]

在第一個(gè)示例中,我們?cè)诨卣{(diào)函數(shù)中用if語(yǔ)句檢查當(dāng)前元素的值是否為2,如果是,就使用return false來(lái)中斷遍歷。在第二個(gè)示例中,我們使用forEach方法遍歷原數(shù)組,并將每一個(gè)元素的值乘以2,將結(jié)果存儲(chǔ)到一個(gè)新數(shù)組中。
總之,each方法是JavaScript中非常常用的一個(gè)函數(shù),它可以幫助我們輕松地遍歷數(shù)組或?qū)ο螅?zhí)行一些操作。本文介紹了其基本用法、語(yǔ)法結(jié)構(gòu)以及常見(jiàn)的應(yīng)用場(chǎng)景,希望對(duì)讀者有所啟發(fā)。