интересно, что с этим не так
$(function() {
var arr1=new Array('A','B','C','D','E','F','G');
var arr2=new Array('F','D','B');
var arr3=arr1;
for(x=0; x<arr3.length; x++) {
if(jQuery.inArray(arr3[x],arr2) == -1) {arr3.splice(x, 1);}
}
alert(arr1.join(','));
alert(arr3.join(','));
});
Я думал, что arr1 по-прежнему должен быть Array('A','B','C','D','E','F','G'), но после этой операции arr1 становится arr3. Для меня это не имеет смысла, так как вся операция вообще не касается arr1.
Нашел ответ после публикации этого. См. раздел сращивание дублирующих массивов javascript.