Добавяне и изтриване на елементи
Добавяне и изтриване на елементи
Добави елементи на масива, както и премахване на тях, също така е възможно, както и обичайните свойства на каквито и да било други обекти. Тъй като единствената разлика, че добавянето на числови свойства могат да променят дължината собственост. и при смяна на свойствата на дължина се отстраняват числови свойства. В общи алгоритъм определен имоти в масиви по следния начин:
- При добавяне на несъществуващи числен имот аз. ако дължината е по-малка или равна на и. с дължина равна на I + 1.
- При промяна на дължината на имоти
- Ако зададената стойност е по-малко от 0, а след това се втурва RangeError.
- Изтрива цялата цифрова свойства индекса на по-голяма от и равна на новата дължина.
От това, че дължината на инсталацията са отстранени "екстра" елементи трябва метод за почистване масив. Ако по някаква причина не сте доволни от възлагането на нова променлива празен масив, и е необходимо да се изчисти съществуващия, това е достатъчно, за да го зададете на имота на дължина е 0.
методи за предаване. поп. смяна и unshift
Въпреки факта, че е възможно и да промените елементи на масива на ръка, се препоръчва да се използва за тази вградени методи, които ще гарантират, че без пропуски в масива и точната стойност на дължината. Правилно, в смисъл, че тя ще бъде равен на броя на елементите на масива.
метод тласък добавя прехвърлените елементите в края на масива. поп метод връща последния елемент на масива и го премахва.
unshift метод добавя елементи прехвърлени в началото на масива. Елементите ще бъдат поставени в същия ред, в който те са били предадени. метод смяна връща първия елемент и го премахва.
В Internet Explorer, в рамките на осмото версия unshift извежда неопределена. във всички други браузъри - новата стойност на дължина. Така че е по-добре да не се надяваме за връщането на unshift стойност.
Добавяне / изтриване на елементи в средата на масива
Метод сплайс има подпис Array.prototype.splice (начало, deleteCount [, item1 [, т.2 [.]]]).
Той премахва от елементите на масив deleteCount от индекса на старт. Ако мине повече от два аргумента, третата и следващите аргументи са вкарани в масива вместо изтрити. Ако старт е отрицателен, индексът, в който да започне премахването, ще започне еднаква дължина +. Връща масив от отдалечени елементи. По този начин при използване на метода на снаждане елементи може да бъде отстранен от средата на масива или за добавяне на произволно количество в произволна позиция на масива.
В най-простия случай, ако искате да премахнете елемент от индекса аз. тогава ще трябва да се обадя на метод на масива снаждане с аргументи I и 1.
Най-общо казано, вторият аргумент в метода на снаждане е задължително, но поведението на функцията с един аргумент е различна в различните браузъри.
- Във Firefox последните версии на Opera, всички елементи, от началото до края на масива ще бъдат изтрити в Safari и Chrome.
- В IE, че няма да се премахне всяка една позиция.
- В по-ранни версии на поведение Opera е още по-малко предсказуеми - ще бъде премахнат един елемент с индекс старт - 1. т.е. -ти старт в един ред.
Затова винаги трябва да премине в метода най-малко два елемента.