javascript中删除指定数组中指定的元素的代码_javascript技巧
函数如下:
foreach = function (obj, insp){
if(obj== null && obj.constructor != Array){
return [];
}
//obj是要处理的数组,obj==null 表示对象尚未存在;obj.constructor != Array 表示对象obj的属性的构造函数不是数组;
//constructor属性始终指向创建当前对象的构造函数。两个条件均满足,则返回空数组[];
//下面对constructor属性作进一步了解。
var obj= [1, 2, 3, 4]; // 等价于 var obj= new Array(1, 2, 3, 4);
console.log(obj.constructor === Array); // 返回true 表明obj的构造函数为Array;
var foo= function() { }; // 等价于 var foo = new Function();
console.log(foo.constructor === Function); // 返回true 表明foo的构造函数为Function;
var obj = new Foo(); //由构造函数实例化一个obj对象
console.log(obj.constructor === Foo); // 返回true 表明obj的构造函数为Foo;
-----------------------------------------------------------------------------------------------------------
var i=0, len = obj.length, r = [];
while(i
if (x !== null) {
r[r.length] = x;
}
i++;
}
return r;
};
//对数组对象obj进行遍历,参数insp代表一个方法或函数,用于对obj中的每个元素进行操作。给参数insp传递了两个参数,obj[i]代表数组中的每一个元素值;并将函数参数insp赋给x,最终将x值赋给数组r。
-----------------------------------------------------------------------------------------------------------
比如我们要遍历数组中的每一个元素,引用foreach函数
var testArray = [1,2,3,4,5,1,2,'w'];
foreach(testArray, function(i){
alert(i)
});
-----------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------
我们用另一个函数来删除指定数组中指定的元素;
ArrayWithout = function(){
if (arguments.length // Arguments 是特殊的对象,代表函数的参数.
return arguments.length == 1 ? arguments[0] : null;
}
var results = [];
var aa = arguments[0];
//将第一参数赋给数组aa;
if (aa === null || aa.constructor != Array) {
return null;
//如果aa不存在或者不是数组,那么返回null;
}
if(arguments[1].constructor == Array){
// 如果第二个参数是数组,则将参数数组中对应的每个元素都删除;
var args = [];
args[0] = aa;
//aa = arguments[0] 将aa赋给数组args,作为其第一个元素值;
foreach(arguments[1], function(v, i){
//引用了函数foreach,来对数组arguments[1]中每个元素进行操作,
args[i+1] = v;
// v代表数组arguments[1]中每个元素值,将它们一一赋值给args[1],args[2]...,而args[0]=arguments[0];
});
}
else{
args = arguments;
//如果第二个参数不是数组,则直接将参数数组赋给args;
}
for(var i = 0;i var isWithout = true;
for(var j = 1; j if(aa[i] == args[j]){
isWithout = false;
break;
// 切记j是从1开始的,因为args的第一元素args[0]是arguments[0],正是我们要处理的的原数组,等同于数组aa;
让要删除的各个元素与原数组aa中的某一元素进行逐次比较,如果相同,break 跳出循环; isWithout返回false,所以也不再执行下面的 results.push(aa[i]);
}
}
if (isWithout) {
results.push(aa[i]);
//所谓删除原理,就是将原数组各元素与要删除的元素进行比较,保留与要删除的元素不相同的元素并赋给一个新的数组results;
}
}
return results;
//返回已经删除了指定元素的数组;
};
// 引用ArrayWithout的例子
var testArray = [1,2,3,4,5,1,2,'w'];
var result = ArrayWithout(testArray, 1, 3);
//var result = ArrayWithout(testArray, [1, 4]);
alert(result) //[2,4,5,2]
源代码如下:
foreach = function (obj, insp){
if(obj == null && obj.constructor != Array){
return [];
}
var i=0, len = obj.length, r = [];
while(i
if (x !== null) {
r[r.length] = x;
}
i++;
}
return r;
};
ArrayWithout = function(){
if (arguments.length return arguments.length == 1 ? arguments[0] : null;
}
var results = [];
var aa = arguments[0];
if (aa === null || aa.constructor != Array) {
return null;
}
if(arguments[1].constructor == Array){
var args = [];
args[0] = aa;
foreach(arguments[1], function(v, i){
args[i+1] = v;
});
}
else{
args = arguments;
}
for(var i = 0;i var isWithout = true;
for(var j = 1; j if(aa[i] == args[j]){
isWithout = false;
break;
}
}
if (isWithout) {
results.push(aa[i]);
}
}
return results;
};
var testArray = [1,2,3,4,5,1,2];
foreach(testArray, function(i){
alert(i)
})
var result = ArrayWithout(testArray, 1, 3);
//var result = ArrayWithout(testArray, [1, 3]);
alert(result) //[2,4,5,2]

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Un tableau est une structure de données séquentielle linéaire utilisée pour contenir des données homogènes dans des emplacements mémoire contigus. Comme les autres structures de données, les tableaux doivent avoir la capacité d'insérer, de supprimer, de parcourir et de mettre à jour des éléments de manière efficace. En C++, nos tableaux sont statiques. C++ fournit également des structures de tableaux dynamiques. Pour un tableau statique, les éléments Z peuvent être stockés dans le tableau. Jusqu'à présent, nous avons n éléments. Dans cet article, nous apprendrons comment insérer des éléments à la fin d’un tableau (également appelés éléments d’ajout) en C++. Comprenez le concept à travers des exemples. L'utilisation du mot-clé « this » est la suivante : GivenarrayA=[10,14,65,85,96,12,35,74,69]Afterin.

Transformation CSS : comment obtenir l'effet de rotation des éléments nécessite des exemples de code spécifiques. Dans la conception Web, les effets d'animation sont l'un des moyens importants pour améliorer l'expérience utilisateur et attirer l'attention de l'utilisateur, et l'animation de rotation est l'un des moyens les plus classiques. En CSS, vous pouvez utiliser l'attribut « transform » pour obtenir divers effets de déformation des éléments, y compris la rotation. Cet article présentera en détail comment utiliser la « transformation » CSS pour obtenir l'effet de rotation des éléments et fournira des exemples de code spécifiques. 1. Comment utiliser le « transf » de CSS

Effet de transition CSS : Comment obtenir l'effet de glissement des éléments Introduction : Dans la conception Web, l'effet dynamique des éléments peut améliorer l'expérience utilisateur, parmi lesquels l'effet de glissement est un effet de transition courant et populaire. Grâce à la propriété de transition du CSS, nous pouvons facilement obtenir l'effet d'animation glissante des éléments. Cet article expliquera comment utiliser les propriétés de transition CSS pour obtenir l'effet de glissement des éléments et fournira des exemples de code spécifiques pour aider les lecteurs à mieux comprendre et appliquer. 1. Introduction à la transition des attributs de transition CSS Attributs de transition CSS tra

Le package javafx.scene.shape fournit des classes avec lesquelles vous pouvez dessiner diverses formes 2D, mais ce ne sont que des formes primitives comme des lignes, des cercles, des polygones et des ellipses, etc... Donc, si vous souhaitez dessiner des formes complexes. Pour des formes personnalisées, vous avez besoin pour utiliser la classe Path. Classe Path Classe Path Vous pouvez dessiner des chemins personnalisés à l'aide de ce contour géométrique qui représente une forme. Pour dessiner des chemins personnalisés, JavaFX fournit divers éléments de chemin, tous disponibles sous forme de classes dans le package javafx.scene.shape. LineTo - Cette classe représente la ligne de l'élément de chemin. Il vous aide à tracer une ligne droite depuis les coordonnées actuelles jusqu'aux (nouvelles) coordonnées spécifiées. HlineTo - Ceci est le tableau

Les éléments non pris en charge par HTML5 sont les éléments purement expressifs, les éléments basés sur des cadres, les éléments d'application, les éléments remplaçables et les anciens éléments de formulaire. Introduction détaillée : 1. Éléments purement expressifs, tels que font, center, s, u, etc., ces éléments sont généralement utilisés pour contrôler le style et la mise en page du texte ; 2. Éléments basés sur des cadres, tels que frame, frameset et noframes ; les éléments sont utilisés dans Dans le passé, il était utilisé pour créer des mises en page Web et des fenêtres divisées. 3. Éléments liés à l'application, tels que l'applet, l'isinde, etc.

Comment utiliser HTML et CSS pour implémenter une mise en page avec un menu de navigation fixe. Dans la conception Web moderne, les menus de navigation fixes sont l'une des mises en page courantes. Il peut maintenir le menu de navigation toujours en haut ou sur le côté de la page, permettant aux utilisateurs de parcourir facilement le contenu Web. Cet article explique comment utiliser HTML et CSS pour implémenter une mise en page avec un menu de navigation fixe et fournit des exemples de code spécifiques. Tout d'abord, vous devez créer une structure HTML pour présenter le contenu de la page Web et le menu de navigation. Voici un exemple simple

Comment utiliser CSS pour obtenir l'effet de dégradé de transparence des éléments Dans le développement Web, l'ajout d'effets de transition aux éléments de page Web est l'un des moyens importants pour améliorer l'expérience utilisateur. L'effet dégradé de transparence peut non seulement rendre la page plus fluide, mais également mettre en valeur le contenu clé de l'élément. Cet article expliquera comment utiliser CSS pour obtenir l'effet de dégradé de transparence des éléments et fournira des exemples de code spécifiques. Utiliser l'attribut de transition CSS Pour obtenir l'effet de dégradé de transparence d'un élément, nous devons utiliser l'attribut de transition CSS. t

Comment supprimer des éléments avec jquery : 1. Supprimez l'élément sélectionné et ses sous-éléments via la méthode jQuery Remove(). La syntaxe est "$("#div1").remove();"; Méthode empty(). Les éléments enfants de l'élément sélectionné, la syntaxe est "$("#div1").empty();".
