首頁 > web前端 > 前端問答 > es6數組怎麼去掉空數據

es6數組怎麼去掉空數據

青灯夜游
發布: 2022-10-20 17:10:22
原創
3133 人瀏覽過

兩種方法:1、用for找出值為空的元素,用splice()刪除,語法「for(i=0;i

es6數組怎麼去掉空數據

本教學操作環境:windows7系統、ECMAScript 6版、Dell G3電腦。

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數組怎麼去掉空數據##【相關推薦:

javascript影片教學

程式設計影片

以上是es6數組怎麼去掉空數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板