練習1:求陣列中所有元素的和
var arr1 = [10, 20, 30, 40, 50];
var sum = 0;
for (var i = 0; i < arr1.length; i++) {
sum += arr1[i];
}
console.log(sum);
練習2:求陣列中所有元素的平均值
var arr2 = [1, 2, 3, 4, 5];
var sum2 = 0;
for (var i = 0; i < arr2.length; i++) {
sum2 += arr2[i];
}
console.log(sum2 / arr2.length);
練習3:求陣列中所有元素中的最大值
var arr3 = [1, 9, 3, 10, 3330, 32];
var max = arr3[0];
for (var i = 0; i < arr3.length; i++) {
if (max < arr3[i]) {
max = arr3[i];
}
}
console.log("最大值:" + max);
但有bug:
var arr3=[-1,-2,-3]; //假設max變數中存盤的是最大值 var max=0; for(var i=0;i<arr3.length;i++){ //判斷這個變數的值和陣列中每個元素的值是不是最大值 if(max<arr3[i]){ max=arr3[i]; } } console.log("最大值:"+max);
練習4:求陣列中所有元素的最小值
var arr4 = [100, 10, 20, 30, 40, 50]; var min = arr4[0]; //假設min里存盤的就是最小值 for (var i = 0; i < arr4.length; i++) { if (min > arr4[i]) { min = arr4[i]; } } console.log("最小值:" + min);
練習5:倒序遍歷陣列
var arr5 = [10, 20, 30, 40, 50, 100]; // 正序 for (var i = 0; i < arr5.length; i++) { console.log(arr5[i]); } //倒序 for (var i = arr5.length - 1; i >= 0; i--) { console.log(arr5[i]); }
練習6:把陣列中每個元素用|拼接到一起產生一個字串并輸出
法1:
var names = ["卡卡西", "佐助", "鳴人", "大蛇丸", "倉木麻衣"]; var str = ""; //空的字串 for (var i = 0; i < names.length - 1; i++) { str += names[i] + "|"; } console.log(str + names[names.length - 1]);
法2:
var names = ["卡卡西", "佐助", "鳴人", "大蛇丸", "倉木麻衣"]; var str = ""; for (var i = 1; i < names.length; i++) { str += "|" + names[i]; } console.log(names[0] + str);
練習7:去掉陣列中重復的0,把其他的資料放在一個新的陣列中
var arr = [10, 0, 20, 0, 30, 0, 50]; var newArr = []; //新陣列,用來存放第一個陣列中所有非0的數字 for (var i = 0; i < arr.length; i++) { if (arr[i] != 0) { newArr[newArr.length] = arr[i]; } } //把新陣列的長度作為下標使用,陣列的長度是可以改變的 console.log(newArr);
練習8:反轉陣列---把陣列中的資料的位置調換
ps:var array = [10, 20, 30, 40, 50];
10和50交換位置,20和40交換位置,
則可知:
1. 回圈次數,計數器,根據交換幾次來決定,不論奇數或偶數個資料,交換次數都是資料長度的一半,即:i<array.length/2
2. 第一個和最后最后一個交換位置,引入第三方變數,則第一個放到第三方里,最后一個放到第一個里,最后一個放第三方
var array = [10, 20, 30, 40, 50]; //回圈的目的是控制交換的次數 for (var i = 0; i < array.length / 2; i++) { //先把第一個元素的值放在第三方變數中 var temp = array[i]; array[i] = array[array.length - 1 - i]; array[array.length - 1 - i] = temp; } console.log(array);
練習9:提示用戶輸入班級人數,求總成績,平均值,最高分,最低分---擴展
var perCount = parseInt(prompt("請輸入班級人數")); //定義陣列存盤班級的每個人的成績 var perScores = []; //回圈的方式錄入每個人的成績 for (var i = 0; i < perCount; i++) { //把每個人的成績存盤到陣列中 perScores[perScores.length] = parseInt( prompt("請輸入第" + (i + 1) + "的個人成績:") ); } console.log(perScores); //求總成績 var sum = 0; var avg = 0; //平均值 var max = perScores[0]; //最大值 var min = perScores[0]; //最小值 for (var i = 0; i < perScores.length; i++) { sum += perScores[i]; //求和 //求最大值 if (max < perScores[i]) { max = perScores[i]; //求最小值 if (min > perScores[i]) { min = perScores[i]; } } } //平均值 avg = sum / perScores.length; console.log("和為:" + sum); console.log("平均值為:" + avg); console.log("最大值:" + max); console.log("最小值:" + min);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/169029.html
標籤:JavaScript
