资讯专栏INFORMATION COLUMN

javascript: Array的splice()索引变化

NeverSayNever / 2167人阅读

摘要:不过由于计算质数的特殊性,虽然不是从开始但也可以判断该数是否有因子。但为了严谨,必须考虑变化的影响。把重新初始化,以便对进行判断

splice(index,delNum,add1,add2...)Array的一个很好用的方法,可以从index值位置开始删除delNum个元素,然后加上add1,add2...;使用该方法在循环遍历中对数组进行修改很好用,但是有个很严峻的问题需要慎重对待,就是————它会改变插入位置以后的值的index。于是我们先来看看这样的问题:

1.给出一个数组,去掉数组中重复的元素:

function deleteSameNumber(list){ for(var i = 0;i

当然,我们可以直接使用delete防止改变index:


//删除数组中相同的元素 function deleteSameNumber(list){ for(var i = 0,len = list.length; i 2.算出一定数值内的所有 质数 :
//计算质数
function prime(num){
    var list = [];
    for(var i = 2; i <= num; i++){ list.push(i);}

    for(var i = 0; i < list.length; i++){
        for(var j = 2; j < list[i]; j++){
            if(list[i] % j == 0){
                list.splice(i,1);    //如1所说,这里会导致原本的list[i+1]变成list[i](new),相当于对下一个数进行计算,但j确实使用上次遗留下来的值并且+1。不过由于计算质数的特殊性,j虽然不是从2开始但也可以判断该数是否有因子。但为了严谨,必须考虑index变化的影响。

                j = 1;    //把j重新初始化,以便对list[i](new)进行判断
            }
        }    
    }
    return list;
}
prime(50);

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/87558.html

相关文章

  • javascript数据结构与算法之数组

    摘要:数组还有的一个特别之处是数组可以包含任何类型的数据,混合型的,很强大。由已有数组创建新数组和方法允许通过已有数组创建数组。 数组的定义 数组是一个线性分配的内存, 存储的元素可以通过索引(通常为数字)来任意存取,而这个索引(也就是我们所谓的下标,从0开始)用来计算元素之间存储的位置的偏移量(其实就是为了区分不同的数据)。 js的数组和其它编程语言有些不同,表面上看和大多编程语言的数组差...

    BDEEFE 评论0 收藏0
  • JavaScript 处理数组函数总结

    摘要:从而将传入的数组误判为非数组。返回值把指定的值添加到数组后的新长度。方法用于删除并返回数组的最后一个元素返回值的最后一个元素。如果数组已经为空,则不改变数组,并返回值。 JavaScript的array可以包含任意数据类型,并通过索引来访问每个元素。 1、检测数组:instanceof、slice()、Array.isArray() 检测一个对象是不是数组的三种方法:(1)方法一:i...

    instein 评论0 收藏0
  • Javascript数组系列五之增删改和强大 splice()

    摘要:删除数组元素的开始索引需要删除元素的个数,插入数组的元素语法因为参数变化多样,我们主要从三个方面来展示的用法。 今天是我们介绍数组系列文章的第五篇,也是我们数组系列的最后一篇文章,只是数据系列的结束,所以大家不用担心,我们会持续的更新干货文章。 生命不息,更新不止! 今天我们就不那么多废话了,直接干货开始。 我们在《Javascript数组系列一之栈与队列》中描述我们是如何利用 pus...

    chavesgu 评论0 收藏0
  • JavaScript数组知多少

    摘要:数组中的元素自动前移,比慢的多。该方法接受一个返回值为布尔类型的函数,对数组中得每个元素使用该函数,如果对于所有的元素,该函数都返回则该方法返回。 数组的维基百科定义是: 在编程语言中,数组数据结构(英语:array data structure),简称数组(英语:Array),是一种数据结构,是数据元素(elements)的集合。元素可以通过索引来任意存取,索引通常是数字,用来计算元...

    Coding01 评论0 收藏0
  • JavaScript基础拾遗

    摘要:由于网景公司希望能在静态页面上添加一些动态效果,于是叫这哥们在两周之内设计出了语言。所以简单说来就是,是一种语言标准,而是网景公司对标准的一种实现。 JavaScript基础拾遗 study notes by Tingting 为啥说JavaScript的基础 在平时开发时,我们更多的是在写PHP的逻辑层,但是在写后台时多多少少会写一写JavaScript的代码,有时候我们就会遇到对j...

    zhouzhou 评论0 收藏0

发表评论

0条评论

NeverSayNever

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<