发表于: 2022-12-04 18:51:33
0 478
js练习:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>索引元素</title>
<script>
//返回数组中的索引号 indexOf(数组元素) 作用是返回该数组元素的索引号,从前面开始查找
//它只返回第一个满足条件的索引号
// 它如果在该数组中找不到元素,则返回的是-1
// var arr = ['red', 'pink', 'blue', 'green', 'blue'];
// console.log(arr.indexOf('blue')); //2
// //返回数组中的索引号 lastIndexOf(数组元素) 作用是返回该数组元素的索引号,从后面开始差点
// console.log(arr.lastIndexOf('blue')); //4
// 封装一个 去重的函数 unique 独一无二
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(['c', 'a', 'z', 'a', 'x', 'a', 'x', 'c', 'b']);
var demo = unique(['blue', 'red', 'blue']);
console.log(demo);
//数组转化为字符串
//1、toString() 将我们的数组转化为字符串
var arr = [1,2,3];
console.log(arr.toString()); //1,2,3
//2、join(分割符)
var arr1 = ['blue', 'red', 'pink'];
console.log(arr1.join()); //blue,red,pink 默认为逗号
console.log(arr1.join('-')); //blue-red-pinkconsole.log(arr1.join('&')); //blue&red&pink
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Array练习</title>
<script>
//1、 利用数组字面量
// var arr = [1, 2, 3];
// console.log(arr);
// //2、利用 new Array()
// // var arr1 = new Array(); //创建了一个空数组
// // var arr2 = new Array(2); // 这个2 表示 数组的长度为2 里面有2个空的数组元素
// // console.log(arr2)
// var arr3 = new Array( 1, 2); // 等同于 【1.2】这样写表示 里面有2个数组元素 是 1和2
// console.log(arr3);
// function reverse(arr) {
// // if(arr instanceof Array) {
// if(Array.isArray(arr)) {
// var newArr = [];
// for(var i = arr.length - 1; i >= 0; i--) {
// newArr[newArr.length] = arr[i];
// }
// return newArr;
// }else {
// return '这个参数格式必须是数组 [1, 2, 3]'
// }
// }
// console.log(reverse());
// // 1、instanceof 运算符 它可以用来检测是否为数组
// var arr = [];
// var obj = {};
// console.log(arr instanceof Array); //true
// console.log(obj instanceof Array); //false
// //2、 Array.isArray(参数); 用于确定传递的值是否是一个 Array。
// //当检测 Array 实例时,Array.isArray 优于 instanceof,因为 Array.isArray 能检测 iframes。
// console.log(Array.isArray(arr)); //true
// console.log(Array.isArray(obj)); //false
// // 添加删除数组元素
// //1、 push() 在外面数组的末尾 添加一个或者多个数组元素 push 推
// var arr = [1, 2, 3];
// // arr.push(4, '张三');
// console.log(arr.push(4, '张三')); //5 返回新数组长度
// console.log(arr); //[1, 2, 3, 4, '张三']
// //(1)push() 是可以给数组后面追加新的元素
// //(2)push() 参数直接写 数组元素就可以了
// //(3)push完毕之后,返回的结果是 新数组的长度
// //(4)元素组也发生变量
//
// //2、 unshift 在外面数组的开头 添加一个或者多个数组元素
// // arr.unshift('李四');
// console.log(arr.unshift('李四'));
// console.log(arr); //['李四', 1, 2, 3, 4, '张三']
// //(1)unshift() 是可以给数组前面追加新的元素
// //(2)unshift() 参数直接写 数组元素就可以了
// //(3)unshift完毕之后,返回的结果是 新数组的长度
// //(4)元素组也发生变量
//
// //3、pop() 它可以删除数组的最后一个元素
// // arr.pop();
// console.log(arr.pop()); // 返回值是 张三
// console.log(arr); //['李四', 1, 2, 3, 4]
// //(1)pop() 是可以删除数组的最后一个元素 一次只能删除一个元素
// //(2)pop() 没有参数
// //(3)pop完毕之后,返回的结果是 被删除的元素
// //(4)元素组也发生变量
//
// //4、shift() 它可以删除数组的第一个元素
// // arr.shift();
// console.log(arr.shift()); // 返回值是 李四
// console.log(arr); // [1, 2, 3, 4]
// //(1)shift() 是可以删除数组的第一一个元素 一次只能删除一个元素
// //(2)shift() 没有参数
// //(3)shift完毕之后,返回的结果是 被删除的元素
// //(4)元素组也发生变量
//有一个包含工资的数组[1500, 1200, 2000, 2100,1800],要求把数组中高于2000的输出,剩余的放到新数组
// var arr = [1500, 1200, 2000, 2100,1800];
// var newArr = [];
// for(var i = 0; i < arr.length; i++) {
// if (arr[i] < 2000) {
// // newArr[newArr.length] = arr[i];
// newArr.push(arr[i]);
// }
// }
// console.log(newArr);
//数组排序
//1、翻转数组
var arr = ['pink', 'red', 'blue'];
arr.reverse();
console.log(arr); //['blue', 'red', 'pink']
//2、数组排序(冒泡排序)
var arr1 = [1, 55, 19, 33, 8];
// arr1.sort();
arr1.sort(function (a, b){
// return a - b; // 升序的排列
return b - a; // 降序的排列
});
// console.log(arr1); //[1, 19, 33, 55, 8]
// console.log(arr1); //[1, 8, 19, 33, 55]
console.log(arr1); //[55, 33, 19, 8, 1]
</script>
</head>
<body>
</body>
</html>
</script>
</head>
<body>
</body>
</html>
明天计划:完成接下来的任务
评论