当前位置:网站首页 > C++编程 > 正文

数组方法map(数组方法slice)




操作数组
1、Array.map()

此方法是将数组中的每个元素调用一个提供的函数,结果作为一个新的数组返回,并没有改变原来的数组
let arr = [1, 2, 3, 4, 5]
let newArr = arr.map(x => x*2)
//arr= [1, 2, 3, 4, 5]   原数组保持不变
//newArr = [2, 4, 6, 8, 10] 返回新数组



2、Array.forEach()

此方法是将数组中的每个元素执行传进提供的函数,没有返回值,注意和map方法区分

let arr = [1, 2, 3, 4, 5]
arr.forEach(x => x*2)
// arr = [1, 2, 3, 4, 5]  数组改变,注意和map区分

3、Array.filter()

此方法是将所有元素进行判断,将满足条件的元素作为一个新的数组返回
let arr = [1, 2, 3, 4, 5]
let newArr = arr.filter(x=>{return x>3} )
console.log(newArr) [4, 5]
 
4、Array.every()




此方法是将所有元素进行判断返回一个布尔值,如果所有元素都满足判断条件,则返回true,否则为false:

let arr = [1, 2, 3, 4, 5]
console.log(arr.every(x=>{return x>7} )) //false
console.log(arr.every(x=>{return x<10} ) )//true

5、Array.some()

 此方法是将所有元素进行判断返回一个布尔值,如果存在元素都满足判断条件,则返回true,
 若所有元素都不满足判断条件,则返回false:
let arr = [1, 2, 3, 4, 5]
console.log(arr.some(x=>{return x>4} )) //true
console.log(arr.some(x=>{return x<0} ) )//false
 
/*






    首先添加一个splice函数:
    splice:该方法的作用就是从数组中删除一个元素
    array.splice(index,count,value....);
    index:表示从哪一个下标开始,
    count:表示删除元素的个数
    value:代表增加的元素
    */






   var   arr = ['tom','andy','jerry','wedy','gates','linus'];

  /*
   slice: 是截取用的
   splice: 是做删除 插入 替换用的
   console.log(arr.slice(0,2))  // ["tom", "andy"]
   console.log(arr.slice(0))    // ["tom", "andy", "jerry", "wedy", "gates", "linus"]
   console.log(arr.slice(2,4))  // ["jerry", "wedy"]
   console.log(arr.slice(1))    // ["andy", "jerry", "wedy", "gates", "linus"]*/





//    var arr = ['tom','andy','jerry','wedy','gates','linus'];
//    console.log(arr.splice(0,2))  // ["tom", "andy"]
//    console.log(arr )    // ["jerry", "wedy", "gates", "linus"]

//   var array = new Array(1,2,3,4,5,6);
//   console.log(array.splice(0,0,2))  // []
//   console.log(array ) // [2, 1, 2, 3, 4, 5, 6]

//   var array = new Array(1,2,3,4,5,6);
//   array.splice(1,1)
//   console.log(array )  // [1, 3, 4, 5, 6]

//    var array = new Array(1,2,3,4,5,6);
//    array.splice(1,3)
//    console.log(array )  // [1, 5, 6]


   var array = new Array(1,2,3,4,5,6);
   array.splice(0,0,2,3,4)
   console.log(array )  //  [2, 3, 4, 1, 2, 3, 4, 5, 6]
1、数组的创建
var arr = new Array(); arr[0] = "aaa";arr[1] = "bbb";arr[2] = "ccc";
var a = [1,2,3,4,5];
var c = new Array("first", "second", "third");
或者数组直接量:
var d = ["first", "second", "third"];








2、数组的元素的访问
var testGetArrValue=arrayObj[1]; //获取数组的元素值
arrayObj[1]= "这是新值"; //给数组元素赋予新的值
3、数组元素的添加
arrayObj. push([item1 [item2 [. . . [itemN ]]]]);// 将一个或多个新元素添加到数组结尾,并返回数组新长度
arrayObj.unshift([item1 [item2 [. . [itemN ]]]]);// 将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回数组新长度
arrayObj.splice(insertPos,0,[item1[, item2[, . . . [,itemN]]]]);//将一个或多个新元素插入到数组的指定位置,插入位置的元素自动后移,返回""。
4、数组元素的删除
var a = new Array("first", "second", "third") ;  delete a[1] ;  document.write(a.length) //显示的结果是3,说明即使删除也无法改变数组的长度
arrayObj.pop(); //移除最后一个元素并返回该元素值
arrayObj.shift(); //移除最前一个元素并返回该元素值,数组中元素自动前移
arrayObj.splice(deletePos,deleteCount); //删除从指定位置deletePos开始的指定数量deleteCount的元素,数组形式返回所移除的元素
5、数组的截取和合并
arrayObj.slice(start, [end]); //以数组的形式返回数组的一部分,注意不包括 end 对应的元素,如果省略 end 将复制 start 之后的所有元素
arrayObj.concat([item1[, item2[, . . . [,itemN]]]]); //将多个数组(也可以是字符串,或者是数组和字符串的混合)连接为一个数组,返回连接好的新的数组
6、数组的拷贝
arrayObj.slice(0); //返回数组的拷贝数组,注意是一个新的数组,不是指向
arrayObj.concat(); //返回数组的拷贝数组,注意是一个新的数组,不是指向
7、数组元素的排序
arrayObj.reverse(); //反转元素(最前的排到最后、最后的排到最前),返回数组地址
arrayObj.sort(); //对数组元素排序,返回数组地址
8、数组元素的字符串化
arrayObj.join(separator); //返回字符串,这个字符串将数组的每一个元素值连接在一起,中间用 separator 隔开。
toLocaleString 、toString 、valueOf:可以看作是join的特殊用法,不常用
 























到此这篇数组方法map(数组方法slice)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • dbf文件怎么转换成excel(dbf文件怎么转换成excel网站)2025-08-28 18:09:08
  • kubectl 命令(kubectl 命令补全)2025-08-28 18:09:08
  • ceph存储池容量阈值(ceph存储池有哪些类型)2025-08-28 18:09:08
  • iec104协议详解(iec101和iec104区别)2025-08-28 18:09:08
  • cnn什么意思骂人不带脏字(cnn什么意思的缩写)2025-08-28 18:09:08
  • MSVCP140.dll是什么意思(msvcp140.dll有什么影响)2025-08-28 18:09:08
  • hipee官网(hipc官网)2025-08-28 18:09:08
  • msvcp140dll丢失是怎回事(msvcp140丢失怎么办)2025-08-28 18:09:08
  • libsvm源码(libco源码分析)2025-08-28 18:09:08
  • junit5 mock静态方法(jmockito mock静态方法)2025-08-28 18:09:08
  • 全屏图片