ArrayWithout = function(){
if (arguments.length < 2) {
// 引数は、関数のパラメーターを表す特別なオブジェクトです。
return argument.length = = 1 ? argument[0] : null;
var results = [];
var aa = argument[0]; // 最初のパラメータを配列 aa に代入します。 > if (aa === null || aa.constructor != Array) {
Return null; // aa が存在しないか、配列でない場合は、null を返します。 if(arguments [1].constructor == Array){
// 2 番目のパラメータが配列の場合、パラメータ配列内の対応する各要素を削除します。
var args = [] args[ 0 ] = aa;
//aa = argument[0] aa を配列 args の最初の要素値として代入します。
foreach(arguments[1], function(v, i){
//参照配列arguments[1]の各要素を操作する関数foreach、
args[i 1] = v;
// vは配列arguments[1]の各要素の値を表し、それらに1を割り当てますargs[1]、args[2]...、および args[0]=arguments[0];
});
else{
args = argument; 🎜>//2 番目のパラメータが配列でない場合は、パラメータの配列を args;
}
for(var i = 0;i < aa.length; i ){
var isWithout = true;
break;
// args args[0] の最初の要素は、処理する元の配列であるため、j は 1 から始まることに注意してください。配列 aa に
削除する各要素と元の配列 aa の要素を順番に比較し、同じであれば isWithout が false を返すので、次の結果が返されます。 (aa[i]) は実行されなくなります。 }
}
if (isWithout) {
results.push(aa[i]);削除する要素を新しい配列に代入します。
}
}
// 指定された要素が削除された配列を返します。 🎜>// 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
var x = insp(obj[i], i);
if (x !== null) {
r[r.length] = x; }
i ; } return r; } if (arguments.length < 2) { return引数 .length == 1 ? 引数[0] : null;
} var 結果 = []; aa = 引数[0]; aa .constructor != Array) {
return null;
}
if(arguments[1].constructor == Array){
var args = []; = aa;
foreach(arguments[1], function(v, i){
args[i 1] = v;
});
else{
args = 引数;
}
for(var i = 0;i
var isWithout = true;
for(var j = 1; j if(aa[i] == args[j]){
isWithout = false;
}
}
if (isWithout) {
results.push(aa[i]);
}
}
結果を返します
var testArray = [1,2,3,4,5,1] , 2];
foreach(testArray, function(i){
alert(i)
})
var result = ArrayWithout(testArray, 1, 3); = ArrayWithout(testArray, [1, 3]);
alert(result) //[2,4,5,2]