精华内容
下载资源
问答
  • javascript splice()算是最强大的了,它可以用于插入、删除或替换数组元素。下面来一一介绍,感兴趣的朋友
  • 如何从JavaScript中的数组替换元素

    千次阅读 2020-07-26 20:55:27
    In this article, we'll see various methods in action to replace an... 在本文中,我们将看到各种有效的方法来替换JavaScript数组中的元素 。 Consider the following array, 考虑以下数组, let heroes = [...

    In this article, we'll see various methods in action to replace an element from an array in JavaScript.

    在本文中,我们将看到各种有效的方法来替换JavaScript中数组中的元素

    Consider the following array,

    考虑以下数组,

    let heroes = [
        "Captain America",
        "Iron Man",
        "Thor",
        "Hulk",
        "Loki"
    ]
    console.log(heroes);
    
    

    Output

    输出量

    (5) ["Captain America", "Iron Man", "Thor", "Hulk", "Loki"]
    
    

    After the endgame, we are sure we will never see "Iron Man" again and our friendly neighborhood "spiderman" has very well joined the crew. So how do we replace Iron Man with SpiderMan in the heroes array?

    比赛结束后,我们确信我们再也不会见到“钢铁侠”了,我们友好的邻居“蜘蛛侠”也加入了队伍。 那么,我们如何在英雄阵列中用蜘蛛侠代替钢铁侠?

    The first approach is the naive approach where we can cycle through the array, find the element we had to replace and change it with the new element.

    第一种方法是幼稚的方法,我们可以遍历数组,找到必须替换的元素,并使用新元素对其进行更改。

    let heroes = [
        "Captain America",
        "Iron Man",
        "Thor",
        "Hulk",
        "Loki"
    ]
    console.log(heroes);
    
    for (let i = 0; i < heroes.length; i++) {
        if (heroes[i] == "Iron Man")
            heroes[i] = "Spiderman";
    }
    console.log(heroes);
    
    

    Output

    输出量

    (5) ["Captain America", "Iron Man", "Thor", "Hulk", "Loki"]
    (5) ["Captain America", "Spiderman", "Thor", "Hulk", "Loki"]
    
    

    Can we do a bit better?

    我们可以做得更好吗?

    We can use the spice() method on our array which is used to add and remove elements from an array. This method takes the first argument as an index which specifies the position of the element to be added or removed. The next argument it takes is the number of elements to be removed and is optional. The last argument is the new items added to the array.

    我们可以在数组上使用spice()方法 ,该方法用于添加和删除数组中的元素。 此方法将第一个参数用作索引,该索引指定要添加或删除的元素的位置。 下一个参数是要删除的元素数,它是可选的。 最后一个参数是添加到数组的新项目。

        array.splice(index,number,newItem);
    
    

    Example:

    例:

    heroes.splice(1,1,"Spiderman");
    console.log(heroes);
    
    

    Output

    输出量

    (5) ["Captain America", "Spiderman", "Thor", "Hulk", "Loki"]
    
    

    Another way we can do this is by using the map method. The map method iterates through the array it is invoked on and runs a callback function on each value. It adds the result of that callback to the new array and returns an array at the end of the execution of callback of the same length.

    我们可以执行此操作的另一种方法是使用map方法 。 map方法遍历在其上调用的数组,并对每个值运行一个回调函数。 它将回调的结果添加到新数组中,并在执行相同长度的回调结束时返回一个数组。

    let newHeroes = heroes.map(hero => {
        if (hero == "Iron Man")
            return "Spiderman";
        else
            return hero;
    })
    
    console.log(newHeroes);
    
    

    Output

    输出量

    (5) ["Captain America", "Spiderman", "Thor", "Hulk", "Loki"]
    
    

    Since the map returns us a new array, we can use the new array obtained and copy that to our old array so that effectively our operation seems in place.

    由于地图返回了一个新数组,因此我们可以使用获得的新数组并将其复制到旧数组中,以便有效地执行我们的操作。

    heroes = newHeroes;
    console.log(heroes);
    
    

    Output

    输出量

    (5) ["Captain America", "Spiderman", "Thor", "Hulk", "Loki"]
    
    
    

    翻译自: https://www.includehelp.com/code-snippets/how-to-replace-element-from-an-array-in-javascript.aspx

    展开全文
  • 首先可以给JS数组对象定义一个函数,用于查找指定元素数组中的位置,即索引,代码为: Array.prototype.indexOf = function(val) { for (var i = 0; i &amp;amp;amp;lt; this.length; i++) { ...

    转自https://www.jb51.net/article/134312.htm
    删除数组指定的某个元素

    首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为:

    Array.prototype.indexOf = function(val) { 
        for (var i = 0; i < this.length; i++) { 
            if (this[i] == val) return i
        } 
        return -1
    }
    Array.prototype.remove = function(val) { 
        var index = this.indexOf(val)
        if (index > -1) { 
            this.splice(index, 1)
        } 
    }

    这样就构造了这样一个函数,比如我有一个数组:

    var emp = ['abs','dsf','sdf','fd']

    假如我们要删除其中的 ‘fd’ ,就可以使用:

    emp.remove('fd')

    删除的数组的某一项

    splice(index,len,[item]) ,该方法会改变原始数组。

    splice有3个参数,它也可以用来替换/删除/添加数组内某一个或者几个值

    index:数组开始下标 len: 替换/删除的长度 item:替换的值,删除操作的话 item为空

    如:arr = [‘a’,’b’,’c’,’d’]

    删除

    //删除起始下标为1,长度为1的一个值(len设置1,如果为0,则数组不变)

    var arr = ['a','b','c','d']
    arr.splice(1,1)
    console.log(arr)
    //['a','c','d']

    //删除起始下标为1,长度为2的一个值(len设置2)

    var arr2 = ['a','b','c','d'] 
    arr2.splice(1,2)
    console.log(arr2)
    //['a','d']

    替换

    //替换起始下标为1,长度为1的一个值为‘ttt’,len设置的1

    var arr = ['a','b','c','d']
    arr.splice(1,1,'ttt')
    console.log(arr)  
    //['a','ttt','c','d'] 
    
    var arr2 = ['a','b','c','d']
    arr2.splice(1,2,'ttt')
    console.log(arr2)
    //['a','ttt','d'] 替换起始下标为1,长度为2的两个值为‘ttt',len设置的1

    添加 —- len设置为0,item为添加的值

    var arr = ['a','b','c','d']; 
    arr.splice(1,0,'ttt'); 
    console.log(arr);   
    //['a','ttt','b','c','d'] 表示在下标为1处添加一项'ttt'
    //delete方法删除掉数组中的元素后,会把该下标出的值置为undefined,数组的长度不会变
    
    var arr = ['a','b','c','d']; 
    delete arr[1]; 
    arr; 
    //["a", undefined × 1, "c", "d"] 中间出现两个逗号,数组长度不变,有一项为undefined
    展开全文
  • 使用js替换数组元素

    万次阅读 2019-03-17 21:13:37
    js替换数组元素 记得我最近刚刚做的一个项目,后端返回的一个数组对象,里面的图片的地址有问题,一个在这个ip上一个在另一个ip 上,我问他咋办,他说,你要自己把那个返回的数据重新修改一下就是下面这种,只替换...
    1. js替换数组元素

    2. 记得我最近刚刚做的一个项目,后端返回的一个数组对象,里面的图片的地址有问题,一个在这个ip上一个在另一个ip 上,我问他咋办,他说,你要自己把那个返回的数据重新修改一下就是下面这种,只替换a 中的http后面的ip 地址为当前ip地址其他保留,我去。这个要求可真烦,没办法,好吧我就来实现吧

                 let conter = [{
    					a: "http:192.168.2.158/img/12",
    					b: 'kkk1',
    					c: 'test1'
    				},
    				{
    					a: "http:195.168.2.158/img/34",
    					b: 'kkk2',
    					c: 'test'
    				},
    				{
    					a: "http:192.168.2.158/img/56",
    					b: 'kkk3',
    					c: 'test'
    				}
    			]
    
    1. 思路是这样的,先定义一个空数组,然后循环当前数组,然后得到当前的ip 地址,
      然后再push 进入一个空数组,然后返回

    2. 好了先补充一个知识点,就是如何获取得到当前ip地址,首先:

    var data=new URL(“a”) 要new 一个对象,然后下面这个是实际操作代码,我们能用生js 实现,react,或者vue 你们肯定也就知道咋操作了,不懂可以留言问我

    <!DOCTYPE html>
    <html>
    	<body>
    		<script>
    			let conter = [{
    					a: "http:192.168.2.158/img/12",
    					b: 'kkk1',
    					c: 'test1'
    				},
    				{
    					a: "http:195.168.2.158/img/34",
    					b: 'kkk2',
    					c: 'test'
    				},
    				{
    					a: "http:192.168.2.158/img/56",
    					b: 'kkk3',
    					c: 'test'
    				}
    			]
    			var newcenter=[]
    			window.location.host;  //域名
    			window.location.hostname; 
    			window.location.href; 
    			window.location.pathname; 
    			window.location.protocol; 
    			window.location.port //端口
    
    			//替换数组中的某个键,然后替换相应的当前域名
    			var contera = conter.forEach((r) => {
    				var cen=new URL(r.a)
    				console.log(cen)
    				//然后你去控制台看看你console出来的是什么   ,就是下面的 这张图片
    				var imgadd=cen.pathname
    				r.a=window.location.host+imgadd
                    newcenter.push(r);
    				return r;     
    			})
    		     console.log(newcenter)
    		</script>
    	</body>
    
    </html>
    

    打印结果
    看到了吧,第一个new 对象之后打印的console.log(cen) 的信息,然后要实现一开始标题我们说的效果,上面的代码也有了,然后打印的结果我也打印出在下面的,有疑问可以留言哟,谢谢,目前正在GitHub 上整理一系列的基础资料,该资料已上传GitHub,以后会持续更新基础到GitHub,希望给个star谢谢

    https://github.com/424363283/basis

    展开全文
  • js数组删除指定元素

    万次阅读 2019-03-20 10:01:10
    js自带删除元素方法有: 1.splice方法 //获取元素数组的下标 Array.prototype.indexOf = function(val) { for (var i = 0; i < this.length; i++) { if (this[i] == val) { return i; }; } ...

    js自带删除元素方法有:

    1.splice方法

    //获取元素在数组的下标
    Array.prototype.indexOf = function(val) {
    	for (var i = 0; i < this.length; i++) {
    		if (this[i] == val)	{ 
    			return i;
    		};
    	}
    	return -1; 
    };
    
    //根据数组的下标,删除该下标的元素
    Array.prototype.remove = function(val) {
    	var index = this.indexOf(val);
    	if (index > -1) {
    	this.splice(index, 1);
    	}
    };
    
    //测试数据
    var insertAttaList = ['abs','dsf',,'abc','sdf','fd'];
    insertAttaList.remove('abc');
    

    splice(index,len,[item]) 注释:该方法会改变原始数组。

    splice有3个参数,它也可以用来替换/删除/添加数组内某一个或者几个值

    index:数组开始下标 len: 替换/删除的长度 item:替换的值,删除操作的话 item为空

    如:arr = [‘a’,‘b’,‘c’,‘d’]

    删除 ---- item不设置

    arr.splice(1,1) //[‘a’,‘c’,‘d’] 删除起始下标为1,长度为1的一个值,len设置的1,如果为0,则数组不变

    arr.splice(1,2) //[‘a’,‘d’] 删除起始下标为1,长度为2的一个值,len设置的2

    替换 ---- item为替换的值

    arr.splice(1,1,‘ttt’) //[‘a’,‘ttt’,‘c’,‘d’] 替换起始下标为1,长度为1的一个值为‘ttt’,len设置的1

    arr.splice(1,2,‘ttt’) //[‘a’,‘ttt’,‘d’] 替换起始下标为1,长度为2的两个值为‘ttt’,len设置的1

    添加 ---- len设置为0,item为添加的值

    arr.splice(1,0,‘ttt’) //[‘a’,‘ttt’,‘b’,‘c’,‘d’] 表示在下标为1处添加一项‘ttt’

    2.delete方法

    delete删除掉数组中的元素后,会把该下标出的值置为undefined,数组的长度不会变

    如:delete arr[1] //[‘a’, ,‘c’,‘d’] 中间出现两个逗号,数组长度不变,有一项为undefined

    展开全文
  • 主要介绍了JS实现根据指定值删除数组中的元素操作,结合实例形式总结分析了JavaScript针对数组元素删除操作的相关实现技巧,需要的朋友可以参考下
  • js删除数组指定元素

    万次阅读 2019-06-28 16:58:34
    ES6删除数组指定元素,例: let array = [1, 2, 3, 4]; 删除2,array.splice(array.findIndex(item => item === 2), 1); findIndex()方法满足条件时返回数元素下标,否则返回-1 splice(index, len, [item])...
  • splice() 方法用于插入、删除或替换数组元素。 **注意:**这种方法会改变原始数组!。 2,语法 array.splice(index,howmany,item1,…,itemX) index : 必需。规定从何处添加/删除元素。 该参数是开始插入和(或)...
  • JavaScript splice() 方法1 定义和用法splice() 方法用于插入、删除或替换数组元素。2 语法arrayObject.splice(index,howmany,element1,.....,elementX)3 参数 描述index 必需。规定从何处添加/删除元素。该参数是...
  • splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。 语法糖: arrayObject.splice(index,howmany,item1,.....,itemX) 参数说明: 参数 描述 index 必需。整数,规定添加/删除项目的位置,使用...
  • 方法通过删除或替换现有元素或者原地添加新的元素来修改数组, 并以数组形式返回被修改的内容。此方法会改变原数组。 splice(一,二,三) 参数一: 删除指定位置 参数二:删除个数 参数三: 插入的参数 可以是数组和对象...
  • 数组中移动指定元素到指定位置:举个栗子:vararr=[1,3,5,7,9],把元素7 放到 3之后 代码如下: 结果截图 源码: // arr 目标数组 key 移动元素 item 目标元素 function movearritem (arr,key,item) { for ...
  • vue js删除数组指定索引的元素

    千次阅读 2020-12-31 11:11:57
    在前端开发中,我们经常需要对数组进行操作,增删改是经常的事情,那我们js中该如何删除指定的下标元素呢???? 我们用splice来操作 1.定义和用法 splice() 方法用于添加或删除数组中的元素。 注意:这种方法...
  • 首先可以给js数组对象定义一个函数,用于查找指定元素数组中的位置,即索引,代码为: Array.prototype.indexOf = function(val) { for (var i = 0; i < this.length; i++) { if (this[i] == val) ...
  • js数组中删除指定元素

    千次阅读 2018-11-07 16:53:53
    &lt;script type="text/javascript"&gt; Array.pArray.prototype.indexOf = function(val) { //prototype 给数组添加属性 for (var i = 0; i &lt; this.length; i++) { ...
  • JS删除数组指定元素

    千次阅读 2018-07-13 17:34:13
    原文链接:http://caibaojian.com/js-splice-element.html删除数组指定的某个元素首先可以给js数组对象定义一个函数,用于查找指定元素数组中的位置,即索引,代码为:Array.prototype.indexOf = function...
  • js 数组中将某一对象元素进行替换

    千次阅读 2020-05-29 16:29:13
    我从未打过折扣 前端QQ群: 981668406 在此附上我的QQ: 2489757828 有问题的话可以一同探讨 我的github: 李大玄 我的私人博客: 李大玄 我的简书: 李大玄 我的CSDN: 李大玄 var asd = {name: '李四', age: 12};...
  • js 根据元素删除数组指定元素

    千次阅读 2018-09-21 20:25:14
    splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。 如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素数组。 两个就组成我们...
  • jq 替换数组中某个元素

    千次阅读 2017-09-26 13:57:02
    替换数组中某个元素 <!doctype html> 无标题文档 <script type="text/javascript" src="http://libs.baidu.com/jquery/1.8.3/jquery.min.js"></script> var a1="two"; var arr = [ "one", "two", "three", ...
  • js 删除数组指定元素

    万次阅读 2018-07-24 21:15:31
    一、不直接修改数组 方法一: function removeElement(arr, item) { var result=[]; for(var i=0; i&lt;arr.length; i++){ if(arr[i]!=item){ result.push(arr[i]); } } return result; } 方法二 : ...
  • js增加移除替换数组里的某个元素

    万次阅读 2018-02-26 16:30:19
    js删除数组里的某个元素 //删除起始下标为1,长度为1的一个值(len设置1,如果为0,则数组不变) 删除起始下标为1,长度为1的一个值(len设置1,如果为0,则数组不变)  var arr = ['a','b','c','d'];  arr = ['a','b...
  • Array.prototype.remove = function(dx) { if(isNaN(dx) || dx > this.length) { return false; } for(var i = 0, n = 0;... //删除目标数组的下标 console.log(a)
  • js 处理数组,把指定位置的元素换成最后一个元素并删除最后一个元素 var arr = new Array(6); arr[0] = "George"; arr[1] = "John"; arr[2] = "Thomas"; arr[3] = "James"; arr[4] = "Adrew"; arr[5] = ...
  • ES6从数组中删除指定元素 findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引。否则返回-1。 arr.splice(arr.findIndex(item => item.id === data.id), 1) 1. js中的splice方法 splice(index,len,...
  • JS数组添加、删除、替换的几种方法

    万次阅读 2019-02-26 13:53:28
    // JS数组添加元素的三种方式 var arr = [1, 2.3, 22] arr.push(2, 0) console.log('push在数组后面插入 =&amp;amp;gt; arr:::', arr) arr.unshift(18) console.log('unshift在数组前面插入 =&amp;amp;gt; ...
  • js数组splice删除某个元素爬坑

    千次阅读 2019-06-12 10:06:21
    先来看下几个概念: // splice:返回从原始数组中删除的项(如果没有任何删除,...本次就拿删除举例,本身我们想删除数组中的某个指定元素,我们需要知道它所在数组中的下标,我们可以用 数组.indexOf获取它所在的...
  • java替换数组中的元素 假设您有一个项目清单: List<String> books = Arrays.asList( "The Holy Cow: The Bovine Testament", "True Hip Hop", "Truth and Existence", "The Big Book of Green Design" ...
  • 版权声明:本文为博主原创文章,未经博主允许...splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。 注:该方法会改变原始数组。不修改数组的方法slice() 语法:arrayObject.splice(index,howman...
  • vue/js 删除二维数组指定元素

    千次阅读 2020-01-19 18:02:01
    let newArray = [] this.selectedValue.forEach((itemP, indexP) => { newArray[indexP] = itemP.filter((itemL) => { return itemL !== item.value }) })
  • js中,删除数组指定的某个元素

    万次阅读 2016-03-30 15:21:58
    首先可以给JS数组对象定义一个函数,用于查找指定元素数组中的位置,即索引,代码为: /**  * 给JS数组对象定义一个函数,用于查找指定元素数组中的位置,即索引  * @param val  * @returns {...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 60,917
精华内容 24,366
关键字:

js数组替换指定元素