JS系列-内置对象-数组

本文探讨了JavaScript中的内置对象——数组,包括创建数组的方法、检测数组、添加删除元素、筛选与排序操作、索引获取及数组转字符串。通过实例展示了如何处理重复元素和数组排序,帮助读者深入理解JavaScript数组的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内置对象-数组对象

内置对象第二部分-数组



前言


一、数组对象的创建

数组对象创建有两种方式

  • 字面量方式
  • new Array()
//1.利用字面量创建数组
var arr = [1,2,3];
console.log(arr[0]);
//2.利用new Array()创建
var arr1= new Array();  //创建了一个空的数组
var  arr2 = new Array(2); // 这个2表示 数组长度为2,里面有两个空的元素
var arr3 = new Array(2,3); // 等价于[2,3,] 有两个数组元素2和3

二、检测是否为数组

// (1)instanceof  运算符  用来检测是否为数组
 var arr = [];
 var obj = {};
 console.log(arr instanceof Array);   //true
 console.log(obj instanceof Array);   //false
 // Array.isArray(参数) 
 console.log(Array.isArray(arr)); //true

三、添加或者删除数组元素

添加删除数组元素方法

// 1.push() 在我们数组的末尾 添加一个或者多个数组元素  push 
var arr = [1,2,3];
arr.push(4,'夕颜');
console.log(arr); //---------[1,2,3,4,'夕颜']
// (1) push可以给数组追加新的元素
// (2) push()参数直接写 数组元素就行
// (3) push完毕后,返回的结果是 新数组的长度
// (4) 原数组也会发生变化
//----------------------------------------------------------------------------------------------

// 2.unshift
arr.unshift(4,'夕颜');
console.log(arr.unshift(4,'夕颜'));// 返回数组的长度 5
console.log(arr); //---------[4,'夕颜',1,2,3]
// (1) unshift可以给数组前面追加新的元素
// (2) unshift()参数直接写  数组元素就可以
// (3) unshift完毕后,返回的结果是 新数组的长度
// (4) 原数组也会发生变化
//----------------------------------------------------------------------------------------------

//3.pop()  删除数组最后一个元素
arr.pop();
console.log(arr.pop());
console.log(arr);
// (1) pop可以删除数组最后数组最后一个元素 记住一次只能删除一个元素
// (2) pop()没有参数
// (3) pop完毕之后, 返回的值是 删除的那个元素
// (4) 原数组也会发生变化
//----------------------------------------------------------------------------------------------


//3.shift()  删除数组前面一个元素
arr.shift();
console.log(arr.shift());
console.log(arr);
// (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.push(arr[i]);
           }
 }
 console.log(newArr);   

五、数组元素排序

翻转数组

var arr = ['夕','颜','夕颜'];
arr.reverse();
console.log(arr);//------------['夕颜','颜','夕']

数组排序

var arr1 = [1,3,7,2]
arr1.sort(function(a,b) {
  // return a-b;  升序的顺序排列
  return b-a; 降序的顺序排列
  });
console.log(arr1); //------------[1,2,3,7]

六、数组元素索引获取

    // 返回数组元素索引号的方法  indexOf(数组元素)  作用就是返回该数组元素的索引号
    // 它只返回第一个满足条件的索引号
    // 它如果在该数组里面找不到元素,则返回的是 -1
    var arr = ['red','blue','red','pink','green'];
    console.log(arr.indexOf('blue'));  //返回blue的索引号 1
    var arr1 = ['red','blue'];
    console.log(arr1.indexOf('pink'));// 数组中没有pink元素,返回值 -1
    //lastIndexOf 从数组后面开始查找
    console.log(arr1.lastIndexOf('red'));// 返回red在数组中的索引号

❤重点案例

  • 目标:把旧数组里面不断重复的元素取出来放到新数组里面,重复的元素值保留一个放到新数组中去重
  • 核心算法 :遍历旧数组,然后将就数组里面的元素去查询新数组,如果该元素在新数组里面没有出现过。我们就添加,否则不添加。
  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','b','x','c','w'])
console.log(demo);

七、数组转换为字符串

//数组转换为字符串
//1.toString()  
var arr = [1,2,3,'夕颜'];
console.log(arr.toString());
//2.join(分隔符)
var arr1 = ['夕','颜','夕颜'];
console.log(arr1.join('*')); // join里面的小括号可以选择用什么分隔符来分割
console.log(arr1.join('¥'));

总结

本文简单介绍了数组对象的用法,并通过三个案例掌握。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值