vue.js 数组里面有对象、数组_JavaScript对象之数组(五)

数组方法(splice)


删除

  • 语法:

  • arrayObject.splice(index,count);

  • 功能:

  • 删除从index处开始的零个或多个元素

  • 返回值:

  • 含有被删除的元素的数组

  • 说明:

  • count是要删除的项目数量,如果设置为0,则不会删除项目。如果不设置,则删除从index开始的所有值

插入

  • 语法:

  • arrayObject.splice(index,0,item1,...,itemX);

  • 功能:

  • 在指定位置插入值

  • 参数:

  • index:起始位置
    0:要删除的个数
    item1,...,itemX:要插入的项

  • 返回值:

  • 数组

替换

  • 语法:

  • arrayObject.splice(index,count,item1,...,itemX);

  • 功能:

  • 在指定位置插入值,且同时删除任意数量的项

  • 参数:

  • index:起始位置
    count:要删除的个数
    item1,...,itemX:要插入的项

  • 返回值:

  • 数组


编程练习

实现:
(1)循环弹出输入框,用户输入的任意字符的前两个被替换为“hello”,后面的字符不受影响,比如在页面中输入一组数据:1,2,3,4,5 把前两项(1和2)换成hello,最后的结果是hello,3,4,5。
(2)当输入“-1”时,输入框停止弹出

任务

第一步:页面中循环弹出一个输入框,当输入-1时停止循环
第二步:将用户输入的数据放进一个数组中,数组中不包含结束字符-1
第三步:将数组的前两个字符替换成“hello”,然后输出在页面中

参考代码
<html>  <head>    <meta charset="UTF-8">    <title>splicetitle>  head>  <body>    <script>      var input;      var arr=[];      while(input!="-1"){        input=prompt("请输入任意你想输的字符");        arr.push(input);      }      arr.splice(arr.length-1,1);      arr.splice(0,2,"hello");      document.write(arr);script>  body>html>

数组方法(indexOf和lastIndexOf)


indexOf()

  • 语法:

  • arrayObject.indexOf(searchvalue,startIndex);

  • 功能:

  • 从数组的开头(位置0)开始向后查找

  • 参数:

  • searchvalue:必需,要查找的项
    startIndex:可选,起点位置的索引

  • 返回值:

  • number,查找的项在数组中的位置,没有找到的情况下返回-1

lastIndexOf()

  • 语法:

  • arrayObject.indexOf(searchvalue,startIndex);

  • 功能:

  • 从数组的末尾开始向后查找

  • 参数:

  • searchvalue:必需,要查找的项
    startIndex:可选,起点位置的索引

  • 返回值:

  • number,查找的项在数组中的位置,没有找到的情况下返回-1


编程练习

小伙伴们,数组的 indexOf() 方法有兼容性问题,如果我们要考虑到低版本浏览器兼容性的话,我们就要自己写一个函数去封装这个方法,那么接下来我们就试试自己动手写下这个函数吧!

任务

第一步:定义一个函数,有两个参数,一个参数是要被检测的数组,另一个参数是要判断的值

function newIndexOf(arr,value)

第二步:函数里面要对被检测的数组进行循环,判断数组里的项等于要判断的值,那么返回这个数组项的索引:

for(var i=0;i  if(arr[i]===value){    return i;  }}

第三步:定义一个数组,检测一下封装的函数是否和 indexOf() 方法是同等效果。

参考代码
<html>  <head>    <meta charset="UTF-8">    <title>封装indexOf方法title>  head>  <body>    <script>      function newIndexOf(arr,value){        for(var i=0;i          if(arr[i]===value){            return i;          }        }        return -1;      }      var a=[1,3,2,4,15,51,2,34,4];      var pos=newIndexOf(a,4);      document.write(pos);script>  body>html>

731713cad173e84e6868e23fdcd6cdba.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值