js tool 方法之删除数组指定项
最近又开始写博文了,还是在自己的本地项目上做一些小的方法案例.
之前撸代码的时候总是遇到删除数组里某个元素的问题,JS没提供便捷的方法,只能自己写个循环处理,所幸自己写个方法,以后博客项目里要用到就不用重复去写代码了.
方法名:RemoveArrItemByVal 移除数组中的指定项,根据某个值
考虑到参数输入的问题,对此做了一个小小的逻辑校验,如果没有传递参数会返回一个新的空数组. 可能会有人问为什么不返回传入的arr数组呢? 因为考虑到如果传入的arr不是个数组,那这个方法返回的也就不是一个数组了,而这个方法在定义之初就只能返回Array数组,所以这里就存在这个悖论,输入的arr不是个数组,返回要是个数组,所幸就把刚实例化的arrNew返回了,诚然后面也有对arr的判断. 关于这块判断目前不是很严谨,现在的判定条件是:一个对象,如果不是undefined,并且它的length属性是undefined,那么,它不是一个Array数组! 目前来看这个推论没毛病,欢迎各位看官进行点评,有更简洁更稳妥的方法可以交流交流.
在循环输入的数组的时候,将满足条件的项进行console.log进行输出,不满足的压入到新数组并返回新数组.输入的数组长度为0的时候返回它本身.
使用方式:
var arr = new Array(1, 2, 3, 4);
arr = Tool.RemoveArrItemByVal(arr, 3);
console.log(arr);
//Tool是我自定义的一个JS对象,在一个公共的JS文件里面.定义好方法以后使用起来就很便捷.
js tool 方法之删除数组指定项的更多相关文章
- [Js]删除数组指定元素
写在前面 在最近的项目中,有用到js对数组的操作,之前自己几乎没有用到这种方法,这里就记录一下,算是对学到的东西的一种总结吧. 数组对象splice方法 splice() 方法向/从数组中添加/删除项 ...
- JavaScript使用for循环和splice删除数组指定元素的注意点
在JavaScript里可以结合for循环和splice来删除数组指定的元素.但是要注意删除元素后,数组索引会发生改变 示例 var arr = ["a","b" ...
- [算法]合并链表&删除数组重复项
合并链表 题目 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1->2->4, 1->3->4 输出:1-> ...
- js封装删除数组指定的某个元素的方法
首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为: Array.prototype.indexOf = function(val) { for (var i = ...
- js删除数组指定元素
删除js数组中制定的元素,这里用到了jquery. var a = new Array("a","b","cc","d3" ...
- 两种方法直接删除数组中特定值的项(JavaScript)
一.问题详情: 直接删除意为原数组需要被改变,而不是得到另一个数组. 二.JavaScript实现 (一)巧用数组的push( ).shift( )方法 function del(arr,num) { ...
- js删除数组指定的某个元素
1.给js数组对象原型加indexof方法 获得元素索引 Array.prototype.indexOf = function(val) { for (var i = 0; i < this.l ...
- php 删除数组指定元素,下标还不乱
$arr是目标数组 $offset是要删除的元素的key 1是指删除的长度 array_splice($arr, $offset, 1); 之前用的unset,但是比如删除的是第三个,那么下标的2就会 ...
- PHP 删除 数组 指定成员
1. unset删除某一个 特定成员 $arr[] = ; $arr[] = ; $arr[] = ; ]); var_dump($arr); array() { []=> ) []=> ...
随机推荐
- hive笔记:时间格式的统一
一.string类型,年月日部分包含的时间统一格式: 原数据格式(时间字段为string类型) 取数时间和格式的语法 2018-11-01 00:12:49.0 substr(regexp_repl ...
- MySQL Host is blocked because of many connection errors 解决方法
应用日志提示错误:create connection error, url: jdbc:mysql://10.45.236.235:3306/db_wang?useUnicode=true&c ...
- c函数指针
#include <stdio.h> int max(int a, int b){ return a > b ? a : b; } int min(int a, int b){ re ...
- [UGUI]游戏中的Tips贴图标边缘显示(贴边)
Tips贴图标边缘显示 图左:当左边宽度不足于容纳Tips时,Tips放在右侧显示,顶和图标对齐 图右:当左边宽度足够容纳Tips时,Tips放在左侧显示,顶和图标对齐 适应需求:当图标和Tips是在 ...
- python3使用selenium + Chrome基础操作代码
selenium是Python的第三方库,使用前需要安装.但是如果你使用的是anaconda,就可以省略这个步骤,为啥?自带,任性. 安装命令: pip install selenium (一)使用s ...
- python 实现网页 自动登录
完整代码: 1 from apscheduler.schedulers.blocking import BlockingScheduler 2 from selenium import webdriv ...
- js 编辑数组
删除数组第一个元素使用var length = arr.shift(); 删除arr的第一个元素后, 返回值是删除后的数组长度 删除数组最后一个元素使用var length = a ...
- CSS染色图标(图片)
之前一直以为用background引入的图标无法染色(非字体图标),现在才知道有黑科技可以用,就是利用drop-shadow. 代码示例 <!DOCTYPE html> <html& ...
- tomcat启动超过时间
Server Tomcat v9.0 Server at localhost was unable to start within 45 seconds. 运行超时 最近我切换了JDK版本之后,将10 ...
- 2.03-handler_openner
import urllib.request def handler_openner(): #系统的urlopen并没有添加代理的功能所以需要我们自定义这个功能 #安全 套接层 ssl第三方的CA数字证 ...