es6数组如何去掉空数据

这篇“es6数组如何去掉空数据”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“es6数组如何去掉空数据”文章吧。

成都创新互联是少有的成都网站设计、做网站、营销型企业网站、小程序开发、手机APP,开发、制作、设计、卖链接、推广优化一站式服务网络公司,2013年至今,坚持透明化,价格低,无套路经营理念。让网页惊喜每一位访客多年来深受用户好评

两种方法:1、用for找到值为空的元素,用splice()删除,语法“for(i=0;i<数组长度;i++){if(this[i]==""||typeof(this[i])=="undefind"){this.splice(i,1);i--;}}”;2、用filter()过滤数组,语法“function f(v){return (v);}a2=a1.filter(f);”。

es6数组去掉空数据的两种方法

方法1:利用for循环和splice()函数

  • 利用for循环遍历数组

  • 在循环体中找到值为空的元素

  • 根据元素的索引,利用splice()函数将该元素去掉

实现代码:

//数组去空值
    var arr1=["某某","",3,5,"color","",3,"某某","color",""]
    console.log(arr1)
  //拓展数组去空值的方法
    Array.prototype.removeEmpty=function () {
      for(var i=0;i<this.length;i++){
        if(this[i]==""||typeof(this[i])=="undefind"){
          this.splice(i,1);
          i--;
        }
      }
      return this;
    }
    var arr2=arr1.removeEmpty();

es6数组如何去掉空数据

方法2:利用filter()函数过滤数组,返回不为空的元素

filter() 函数会调用一个回调函数来过滤数组元素,返回符合条件的所有元素(创建一个新数组来返回)

  • 只需要将符合条件设置为“不是空数据”即可

设置过滤条件的函数的写法

function f(value){
	return (value);
}

使用filter() 函数调用一个回调函数f(value)来过滤数组即可。

实现代码:

//数组去空值
	
function f(v){
	return (v);
}
var arr1=["某某","",3,5,"color","",3,"某某","color",""]
console.log(arr1)
var arr2=arr1.filter(f);
console.log(arr2)

es6数组如何去掉空数据

说明:filter() 方法

filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

作用:可以返回数组中满足指定条件的元素。

array.filter(function callbackfn(Value,index,array),thisValue)

function callbackfn(Value,index,array):一个回调函数,不可省略,最多可接受三个参数:

  • value:当前数组元素的值,不可省略。

  • index:当前数组元素的数字索引。

  • array:当前元素属于的数组对象。

返回值是一个包含回调函数为其返回 true 的所有值得新数组。如果回调函数为 array 的所有元素返回 false,则新数组的长度为 0。

下面通过实例来具体了解一下:返回全部偶数

var a = [2,3,4,5,6,7,8];
function f (value) {
	if (value % 2 == 0) {
		return true;
	}else{
		 return false;
	}
}
var b = a.filter(f);
console.log(b);

输出结果:

es6数组如何去掉空数据

以上就是关于“es6数组如何去掉空数据”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注创新互联行业资讯频道。

网站栏目:es6数组如何去掉空数据
当前地址:https://www.cdcxhl.com/article24/poehje.html

成都网站建设公司_创新互联,为您提供网站设计企业建站Google网站收录面包屑导航动态网站

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

手机网站建设