Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Удаление элемента массива по его названию (https://javascript.ru/forum/misc/28906-udalenie-ehlementa-massiva-po-ego-nazvaniyu.html)

ruslan_mart 04.07.2013 18:13

Может, как нибудь так?:)
var arr = ['test1', 'test2', 'test3','test4','test5','test6'];

function $del(a, b)
{
   for(var i in a) if(a[i] == b) delete a[i];
   return a;
}

arr = $del(arr, 'test2');

рони 04.07.2013 18:47

Dorian_bs,
был элемент на 2 месте так и остался
arr = ['test1', 'test2', 'test3','test3','test5','test6'];
alert(arr[2])
for (var i = 0; i < arr.length; i++) {
    if(arr[i] == 'test3') {
        arr.splice(i, 1);
    }
}
alert(arr[2])

Ruslan_xDD,
было 6 элементов так и осталось
var arr = ['test1', 'test2', 'test3','test4','test5','test6'];
alert(arr.length)
function $del(a, b)
{
   for(var i in a) if(a[i] == b) delete a[i];
   return a;
}

arr = $del(arr, 'test2');
alert(arr.length)

рони 04.07.2013 21:24

:)
Array.prototype.deleteEach = function ( value ) {
  for ( var i = this.length;i; this[ --i ] === value && this.splice( i, 1 ));
  return this;
};
alert(['test1', 'test2', 'test3', 'test3', 'test5', 'test6'].deleteEach( 'test3' ));

skrudjmakdak 04.07.2013 21:28

выежуйесь друг перед другом тут??))


Часовой пояс GMT +3, время: 10:32.