Dans es6, le filtre filtre filtre les éléments du tableau et renvoie un nouveau tableau. La fonction filter() crée un nouveau tableau contenant tous les éléments du test implémentés via la fonction de rappel fournie, la syntaxe "arr.filter(callback(element[, index[, array]])[, thisArg])" if If If aucun élément du tableau ne réussit le test, un tableau vide est renvoyé.
L'environnement d'exploitation de ce tutoriel : système Windows 7, ECMAScript version 6, ordinateur Dell G3.
filter dans ES6
la fonction filtre est communément appelée filtre Fonction : filtre les éléments du tableau et renvoie un nouveau tableau ; éléments du test mis en œuvre par la fonction.
var sexData=["男","女","女","男","女"]; var filter2=sexData.filter(function(sex){ return sex==="女" }) //console.log(filter2) ["女", "女", "女"]
var porducts = [ {name: 'apple',type: 'red'} , {name: 'orange',type: 'orange'}, {name: 'banana',type: 'yellow'}, {name: 'mango',type: 'yellow'} ]; var filter2=porducts.filter(function(item){ return item.type==='yellow' }) //console.log(filter2) //0: {name: "banana", type: "yellow"}1: {name: "mango", type: "yellow"}
var newArray = arr.filter(
callback(element[, index[, array]])[, thisArg]
)
1. Supprimer les chaînes vides, non définies, null
array.filter((value, index, arr) => {value})
2. Déduplication de tableau
array.filter((value, index, arr) => {arr.indexOf(value) === index})
1 Filtrer les entrées invalides dans JSON
Exemple d'utilisation de filter() crée. json d'éléments avec des identifiants non nuls.
var arr = [ { id: 15 }, { id: -1 }, { id: 0 }, { id: 3 }, { id: 12.2 }, { }, { id: null }, { id: NaN }, { id: 'undefined' }];var invalidEntries = 0;function isNumber(obj) { return obj !== undefined && typeof(obj) === 'number' && !isNaN(obj);}function filterByID(item) { if (isNumber(item.id) && item.id !== 0) { return true; } invalidEntries++; return false; }var arrByID = arr.filter(filterByID);console.log('Filtered Array\n', arrByID); // Filtered Array// [{ id: 15 }, { id: -1 }, { id: 3 }, { id: 12.2 }]console.log('Number of Invalid Entries = ', invalidEntries); // Number of Invalid Entries = 5
2. Supprimez les chaînes vides, non définies, null
//2. 去掉空字符串、undefined、null var porducts = [ {name:''}, {name:"哈哈"} ]; var filter2=porducts.filter(function(item){ return item.name }) //console.log(filter2) //打印得出 0: {name: "哈哈"}
//3. 数组去重 array.filter((value, index, arr) => {arr.indexOf(value) === index}) var porducts = ['苹果','香蕉','苹果','芒果'] var filter2=porducts.filter(function(item,index,porducts){ return porducts.indexOf(item)==index }) //console.log(filter2) // ["苹果", "香蕉", "芒果"]
[Apprentissage recommandé :
Tutoriel avancé javascript].
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!