二阶段JavaScript-Day07知识点整理
1.ES5新增数组方法
1.map();
语法:arr.map(function(item, index){
return item*3;
})
含义:遍历数组,item代表每个元素,index代表下标。
返回值:返回映射的新数组。
2.forEach();
语法:arr.forEach(function(item, index){})
含义:遍历数组。
返回值:没有返回值。
3.filter();
语法:arr.filter(function(item, index){
return item > 8;
})
含义:过滤留下满足条件的元素。
返回值:数组形式的满足条件的元素。
4.some();
语法:arr.some(function(item, index){
return item > 8;
})
含义:数组中只要有一个元素满足条件,返回true;都不满足返回false。
返回值:true / false。
5.every();
语法:arr.every(function(item, index){
return item > 8;
})
含义:数组中每个元素都满足条件,返回true;只要有一个不满足就返回false。
返回值:true / false。
2.冒泡排序
排序思路:相邻两个元素进行比较,大的往后排。
var arr = [4,5,32,564,12,45];
for(var i = 0; i < arr.length -1; i++){
for(var j = 0; j < arr.length -1 -i; j++){
if(arr[j] > arr[j+1]){
var temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
console.log(arr);
3.选择排序
排序思路:假设第一个元素是最小值,拿第一个元素和后面所有的元素进行比较,如果比第一个元素小就与第一个元素进行交换。
var arr = [4,5,32,564,12,45];
for(var i = 0; i < arr.length -1; i++){
for(var j = i +1; j < arr.length; j++){
if(arr[i] > arr[j]){
var temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
console.log(arr);
4.基本数据类型和引用数据类型
数据类型分为基本数据类型和引用数据类型。
基本数据类型:number, string, boolean, undefined, null
引用( 复杂 )数据类型:object, array, set …
基本数据类型的特点:
1.基本数据类型变量存的是值
2.基本数据类型的变量存储在栈内存。
3.基本数据类型的变量与变量之间互不影响。
var a = 10;
var b = a;
b = 20;
console.log(a);//10
console.log(b);//20
引用数据类型的特点:
1.引用数据类型的变量在栈内存存储的是地址值。
2.引用数据类型的变量存储在堆内存。
3.引用数据类型的变量如果和另外一个引用数据类型的变量共用一个地址值,那么其中一个变化,另一个也会受到影响。
var arr1 = [1,2,3];
var arr2 = arr1;
arr2[0] = 4;
console.log(arr1);//[4,2,3]
console.log(arr2);//[4,2,3]