1、数组:一组数据的集合,创建方式 var str = newArray()、var str2 =[]。
2、求数组长度:str.length
var arr1 = [1, 2, 3, 4, 5, 6, 7];
console.log(arr1.length);
3、遍历数组:forEach
var arr = [1, 2, 3, 4];
for (var i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
4、计算数组的和及平均值
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、 求数组中最大值
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('该数组中最大的值是:' + max);
数组中的最小值
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('该数组中最小的值是:' + min);
6、switch语句:多分支语句,也可以实现多选一
语法结构 switch 转换、 开关、case小例子或者选项的意思
7、查询水果价格
var fruit = prompt('亲输入查询的水果:');
switch (fruit) {
case '苹果':
alert('苹果价格是3/斤');
break;
case '榴莲':
alert('榴莲价格是18/斤');
break;
case '葡萄':
alert('葡萄价格是12/斤');
break;
default:
alert('没有这类水果')
}
8、循环 for || while || do while
A、for 在程序中,一组被重复执行的语句被称之为 循环体 ,能否继续执行,取决于循环的 终止条件,由循环体及循环的终止条件组成的语句,被称为 循环语句
B、for (初始化变量; 条件表达式 ; 操作表达式){
循环体
}
9、break关键字 退出整个循环
10、输出数组中重复的元素
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、数组去重
//数组去重
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、翻转数组
//翻转数组
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、删除数组指定元素(把0删掉)
//删除数组指定元素(把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、检测是否为数组:instanceof Array.isArray(参数); 后新增的
//检测是否为数组:instanceof Array.isArray(参数); 后新增的
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的区别
break:结束当前循环体
continue:跳出本次循环,继续执行下次循环
return:不仅可以退出循环,还能够返回return语句中的值,同时还可以结束当前的函数体内的代码
16、arguments的使用
当我们不知道有多少个参数传递时,可以用arguments来获取
arguments实际上它是当前函数的一个内置对象。
所有函数都内置了一个arguments对象
arguments对象中存储了传递的实参
17、函数的相互调用
18、concat() 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
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() 方法浅复制数组的一部分到同一数组中的另一个位置,并返回它,不会改变原数组的长度
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() 方法对数组的每个元素执行一次给定的函数。
const array1 = ['a', 'b', 'c'];
array1.forEach(element => console.log(element));
// expected output: "a"
// expected output: "b"
// expected output: "c"
21、Array.from() 方法从一个类似数组或可迭代对象创建一个新的,浅拷贝的数组实例
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、删除数组末尾的元素
var fruits = ['Apple', 'Banana'];
console.log(fruits.length);
var first = fruits[0];
console.log(first);
// Apple
var last = fruits[fruits.length - 1];
// Banana
//遍历数组
fruits.forEach(function (item, index, array) {
console.log(item, index);
})
//删除数组末尾的元素
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);
//添加元素到数组的末尾
var newLength = fruits.push('Orange');
console.log(newLength);
console.log(fruits);