目录
5.翻转数组:将数组[1,65,82,64,59]的元素按从右至左顺序重新排列
6案例:冒泡排序的实现:将数组[1,65,82,64,59]按从大到小的顺序排列
1.求数组[1,65,82,64,59]中的最大值
观察这个实例可以发现,我们定义数组可以通过直接给数组赋值的方式实现,像这种赋值方式,for循环里的条件可以直接写 i<5;但要注意数组元素下标和长度的区别,下标就是数组中各个元素的名字,从0开始(所有数组都是)依次增加,长度指数组内的元素数量,有一个是一个。
2.向数组[1,65,82,64,59]中添加元素
由上述实例可以看到js中数组的内容是可以灵活更改的,主要方式由修改长度和内容两种。
3.案例:新建一个数组依次添加数字1-10
注意此实例中新建数组的方式,这种方法叫做字面量定义。所谓字面量即见字如面,我看到[ ],我就知道这是数组,看到‘ ’就知道是字符串。这种方法相较赋值定义的好处在于更加灵活。
4.将一组数组中满足条件的元素放入新的数组
5.翻转数组:将数组[1,65,82,64,59]的元素按从右至左顺序重新排列
6案例:冒泡排序的实现:将数组[1,65,82,64,59]按从大到小的顺序排列
理解冒泡排序的原理十分重要!!!
上述所有实例源码:
// 1.求数组[1,65,82,64,59]中的最大值
var arr = [1, 65, 82, 64, 59];//赋值定义数组
var max;
for (var i = 0; i < arr.length; i++) {
if (arr[i + 1] > arr[i]) {
max = arr[i + 1];
}
}
console.log(max);
//2.向数组[1,65,82,64,59]中添加元素
var arr = [1, 65, 82, 64, 59];
console.log(arr);
arr.length = 6;//修改数组长度添加元素
console.log(arr);
arr[6] = '流星';//直接给赋值添加元素
arr[8] = '划过';
console.log(arr);
//3.案例:新建一个数组依次添加数字1-10
var arr = [];
for (var i = 0; i < 10; i++) {
arr[i] = arr.length + 1;//注意数组下标和元素之间的联系
}
console.log(arr);
// 4.将一组数组中满足条件的元素放入新的数组:
// 将数组[1,65,82,64,59]中能被2整除的数放入新的数组
var arr = [1, 65, 82, 64, 59];
var result = [];
for (var i = 0; i < arr.length; i++) {
if (arr[i] % 2 == 0) {
result += arr[i];//注意别漏了“+”,否则只能记录最后一个满足条件的数
}
}
console.log(result);
// 5.翻转数组:将数组[1,65,82,64,59]的元素按从右至左顺序重新排列
var arr = [1, 65, 82, 64, 59];
var reverse = [];
for (var i = arr.length - 1; i >= 0; i--) {
reverse += arr[i];
}
console.log(reverse);
// 6.冒泡排序的实现:将数组[1,65,82,64,59]按从大到小的顺序排列
var arr = [1, 65, 82, 64, 59];
for (var i = 0; i < arr.length - 1; i++) {
//i 指主动比较的元素轮数,第一轮是以arr[0]为基准比较,后面依次以arr[i]为比较基准
for (var j = 0; j < arr.length - 1; j++) {
//j arr[i]元素比较的过程,arr[j]即两个数的比较:
//开始是arr[0]和arr[1]的元素值比较,比较完后是arr[0]与arr[2]比较,依次后推
if (arr[j] < arr[j + 1]) {
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
console.log(arr);
本篇文章中所有知识点参考自B站黑马程序员视频: