1.数组(Array) :就是一组数据的集合 存储在单个变量下的优雅方式
2. 利用new 创建数组
var arr = new Array(); // 创建了一个空的数组
3. 利用数组字面量创建数组 []
var arr = []; // 创建了一个空的数组 等于var arr = new Array();
var arr1 = [1, 2, 'p', true];
我们数组里面的数据一定用逗号分隔
数组里面的数据 比如1,2, 我们称为数组元素
4. 获取数组元素 格式 数组名[索引号] 索引号从 0开始
console.log(arr1); //4个全部输出
console.log(arr1[2]); // p
console.log(arr1[3]); // true
console.log(arr1[4]); // 因为没有这个数组元素 所以输出的结果是 undefined
</script>
5. 数组长度 数组名.length
arr1.length; // 4
数组转换为分割字符串
<script>
// 将数组 ['red', 'green', 'blue', 'pink'] 转换为字符串,并且用 | 或其他符号分割
// 1.需要一个新变量用于存放转换完的字符串 str。
// 2.遍历原来的数组,分别把里面数据取出来,加到字符串里面。
// 3.同时在后面多加一个分隔符
var arr = ['red', 'green', 'blue', 'pink'];
var str = '';
var sep = '*';
for (var i = 0; i < arr.length; i++) {
str += arr[i] + sep;
}
console.log(str);
</script>
输出为:red*green*blue*pink*
新增数据元素
1. 新增数组元素 修改length长度
var arr = ['red', 'green', 'blue'];
console.log(arr.length);
arr.length = 5; // 把我们数组的长度修改为了 5 里面应该有5个元素 ['red', 'green', 'blue', empty*2]
console.log(arr);
console.log(arr[3]); // undefined 声明变量未给值默认为undefined
console.log(arr[4]); // undefined
2. 新增数组元素 修改索引号 追加数组元素
var arr1 = ['red', 'green', 'blue'];
arr1[3] = 'pink';
console.log(arr1);
arr1[4] = 'hotpink';
console.log(arr1);
arr1[0] = 'yellow'; // 原先有占用替换原来的数组元素
console.log(arr1);
arr1 = 'hi;
console.log(arr1); // 不要直接给 数组名赋值 否则里面的数组元素都没有了
筛选数组
// 方法2
var arr = [2, 0, 6, 1, 77, 0, 52, 0, 25, 7];
var newArr = [];
// 刚开始 newArr.length 就是 0
for (var i = 0; i < arr.length; i++) {
if (arr[i] >= 10) {
// 新数组索引号应该从0开始 依次递增
newArr[newArr.length] = arr[i];
}
}
// 冒泡排序
// var arr = [5, 4, 3, 2, 1];
var arr = [4, 1, 2, 3, 5];
for (var i = 0; i <= arr.length - 1; i++) { // 外层循环管趟数
for (var j = 0; j <= arr.length - i - 1; j++) { // 里面的循环管 每一趟的交换次数
// 内部交换2个变量的值 前一个和后面一个数组元素相比较
if (arr[j] < arr[j + 1]) {
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}