1、數(shù)組:一組數(shù)據(jù)的集合,創(chuàng)建方式 var str = newArray()蹂匹、var str2 =[]。
2凹蜈、求數(shù)組長度:str.length
var arr1 = [1, 2, 3, 4, 5, 6, 7];
console.log(arr1.length);
3限寞、遍歷數(shù)組:forEach
var arr = [1, 2, 3, 4];
for (var i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
4忍啸、計(jì)算數(shù)組的和及平均值
var arr = [2, 6, 1, 7, 4];
var sum = 0;
var average = 0;
for (var i = 0; i < arr.length; i++) {
sum += arr[i];
}
average = sum / arr.length;
console.log(sum, average);
5、 求數(shù)組中最大值
var arr = [2, 6, 1, 7, 4];
var max = arr[0];
for (var i = 1; i < arr.length; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
console.log('該數(shù)組中最大的值是:' + max);
數(shù)組中的最小值
var arr = [2, 6, 1, 7, 4];
var min = arr[0];
for (var i = 1; i < arr.length; i++) {
if (arr[i] < min) {
min = arr[i];
}
}
console.log('該數(shù)組中最小的值是:' + min);
6履植、switch語句:多分支語句计雌,也可以實(shí)現(xiàn)多選一
語法結(jié)構(gòu) switch 轉(zhuǎn)換、 開關(guān)玫霎、case小例子或者選項(xiàng)的意思
7凿滤、查詢水果價(jià)格
var fruit = prompt('親輸入查詢的水果:');
switch (fruit) {
case '蘋果':
alert('蘋果價(jià)格是3/斤');
break;
case '榴蓮':
alert('榴蓮價(jià)格是18/斤');
break;
case '葡萄':
alert('葡萄價(jià)格是12/斤');
break;
default:
alert('沒有這類水果')
}
8、循環(huán) for || while || do while
A庶近、for 在程序中翁脆,一組被重復(fù)執(zhí)行的語句被稱之為 循環(huán)體 ,能否繼續(xù)執(zhí)行鼻种,取決于循環(huán)的 終止條件反番,由循環(huán)體及循環(huán)的終止條件組成的語句,被稱為 循環(huán)語句
B叉钥、for (初始化變量; 條件表達(dá)式 ; 操作表達(dá)式){
循環(huán)體
}
9罢缸、break關(guān)鍵字 退出整個循環(huán)
10、輸出數(shù)組中重復(fù)的元素
var a = [5, 4, 3, 2, 1, 2, 3, 2, 1,];
Array.prototype.duplicate = function () {
var tmp = [];
this.concat().sort().sort(function (a, b) {
if (a == b && tmp.indexOf(a) === -1) tmp.push(a);
});
return tmp;
}
console.log(a.duplicate());
11投队、數(shù)組去重
//數(shù)組去重
function unique(arr) {
var newArr = [];
for (var i = 0; i < arr.length; i++) {
if (newArr.indexOf(arr[i]) === -1) {
newArr.push(arr[i]);
}
}
return newArr;
}
var demo = unique(['blue', 'green', 'blue']);
console.log(demo);
12枫疆、翻轉(zhuǎn)數(shù)組
//翻轉(zhuǎn)數(shù)組
var arr = [1, 2, 3, 4];
var newArr = [];
for (var i = arr.length - 1; i >= 0; i--) {
newArr[newArr.length] = arr[i];
}
console.log(newArr);
13、刪除數(shù)組指定元素(把0刪掉)
//刪除數(shù)組指定元素(把0刪掉)
var arr = [2, 0, 3, 4, 5, 6, 7, 12, 0, 113, 14, 24];
var newArr = [];
for (var i = 0; i < arr.length; i++) {
if (arr[i] != 0) {
newArr[newArr.length] = arr[i];
}
}
console.log(newArr);
14敷鸦、檢測是否為數(shù)組:instanceof Array.isArray(參數(shù))养铸; 后新增的
//檢測是否為數(shù)組:instanceof Array.isArray(參數(shù)); 后新增的
var arr = [];
var obj = {};
console.log(arr instanceof Array);
console.log(obj instanceof Array);
console.log(Array.isArray(obj));
console.log(Array.isArray(arr));
15轧膘、break , continue, return的區(qū)別
break:結(jié)束當(dāng)前循環(huán)體
continue:跳出本次循環(huán),繼續(xù)執(zhí)行下次循環(huán)
return:不僅可以退出循環(huán)兔甘,還能夠返回return語句中的值谎碍,同時(shí)還可以結(jié)束當(dāng)前的函數(shù)體內(nèi)的代碼
16、arguments的使用
當(dāng)我們不知道有多少個參數(shù)傳遞時(shí)洞焙,可以用arguments來獲取
arguments實(shí)際上它是當(dāng)前函數(shù)的一個內(nèi)置對象蟆淀。
所有函數(shù)都內(nèi)置了一個arguments對象
arguments對象中存儲了傳遞的實(shí)參
17、函數(shù)的相互調(diào)用
18澡匪、concat() 方法用于合并兩個或多個數(shù)組熔任。此方法不會更改現(xiàn)有數(shù)組,而是返回一個新數(shù)組唁情。
const array1 = ['a', 'b', 'c'];
const array2 = ['d', 'e', 'f'];
const array3 = array1.concat(array2);
console.log(array3);
// expected output: Array ["a", "b", "c", "d", "e", "f"]
語法:
var new_array = old_array.concat(value1[, value2[, ...[, valueN]]])
19疑苔、copyWithin() 方法淺復(fù)制數(shù)組的一部分到同一數(shù)組中的另一個位置,并返回它甸鸟,不會改變原數(shù)組的長度
const array1 = ['a', 'b', 'c', 'd', 'e'];
// copy to index 0 the element at index 3
console.log(array1.copyWithin(0, 3, 4));
// expected output: Array ["d", "b", "c", "d", "e"]
// copy to index 1 all elements from index 3 to the end
console.log(array1.copyWithin(1, 3));
// expected output: Array ["d", "d", "e", "d", "e"]
語法:
arr.copyWithin(target[, start[, end]])>
20惦费、forEach() 方法對數(shù)組的每個元素執(zhí)行一次給定的函數(shù)兵迅。
const array1 = ['a', 'b', 'c'];
array1.forEach(element => console.log(element));
// expected output: "a"
// expected output: "b"
// expected output: "c"
21、Array.from() 方法從一個類似數(shù)組或可迭代對象創(chuàng)建一個新的薪贫,淺拷貝的數(shù)組實(shí)例
console.log(Array.from('foo'));
// expected output: Array ["f", "o", "o"]
console.log(Array.from([1, 2, 3], x => x + x));
// expected output: Array [2, 4, 6]
22恍箭、刪除數(shù)組末尾的元素
var fruits = ['Apple', 'Banana'];
console.log(fruits.length);
var first = fruits[0];
console.log(first);
// Apple
var last = fruits[fruits.length - 1];
// Banana
//遍歷數(shù)組
fruits.forEach(function (item, index, array) {
console.log(item, index);
})
//刪除數(shù)組末尾的元素
var last = fruits.pop();
console.log(fruits);
var myHonda = { color: 'red', wheels: 4, engine: { cylinders: 4, size: 2.2 } };
var myCar = [myHonda, 2, "cherry condition", "purchased 1997"];
var newCar = myCar.slice(0, 2);
//添加元素到數(shù)組的末尾
var newLength = fruits.push('Orange');
console.log(newLength);
console.log(fruits);