Аппараттық және бағдарламалық қамтамасыз етуді орнату

JavaScript массивінің белгілі бір элементін қалай жоюға болады? Жиым элементін жою үшін жою функциясын пайдалану.

Жиым элементтерін кірістіреді, жояды немесе ауыстырады.

Техникалық сипаттамасы: ECMAScript 3-ші басылым.

Синтаксис

Array.splice(бастау, жоюСаны, элемент1, элемент2, ..., элементN)

Параметрлер

бастауЭлементтер массивтен жойылатын және/немесе массивке қосылатын массив элементінің индексі. Теріс мәндерге рұқсат етіледі, бұл жағдайда әдіс шақырылатын индекс келесі формула бойынша есептеледі: ұзындық (массив ұзындығы) + бастау . жоюСаныҚосымша мән. Бастау арқылы көрсетілген индекстен басталатын массивтен жойылатын элементтердің санын көрсететін бүтін сан. DeleteCount болса 0 , элементтер жойылмайды. DeleteCount мәні болса көбірек мөлшермассивтің қалған элементтері, содан кейін массивтің соңына дейінгі барлық элементтер жойылады. Теріс мәндерге жол берілмейді. элементNҚосымша мән. Жиымға қосылатын элементтер. Ешбір элементті көрсетпесеңіз, splice() жай ғана массивтен элементтерді жояды.

Қайтарылатын мән

Жойылған элементтерді қамтитын жаңа массив (бар болса). Тек бір элемент жойылса, бір элементтің массиві қайтарылады. Ешбір элемент жойылмаса, бос массив қайтарылады.

Сипаттама

Әдіс қосылым()позициясы бастапқы аргументпен көрсетілген элементтен бастап, оны қоса алғанда, массив элементтерінің көрсетілген санын жояды және оны аргументтер тізімінде тізімделген мәндермен ауыстырады (элемент1, ..., элементN). Элементтер енгізілген немесе жойылғаннан кейін массив элементтері жылжытылады және массивтің қалған бөлігімен сабақтас тізбекті құрайды.

Ескертуде:Ұқсас аталған slice() әдісінен айырмашылығы, splice() әдісі массивді тікелей өзгертеді.

Мысалдар

Әдіс қосылым()жояды 0 индекс бойынша элементтер 2 және «Лимон» сөзін кірістіреді:

біриндекс бойынша элемент 3 :

Келесі мысалда splice() әдісі жояды біриндекс бойынша элемент 2 және «Киви» кірістіреді.

JavaScript-те, сондай-ақ басқа бағдарламалау тілдерінде массивтермен жұмыс істеу үшін әртүрлі әдістер қолданылады.

Әдістер логиканы құруды және оны сценарийде енгізуді жеңілдетеді.

Төменде JS жүйесінде массивтермен жұмыс істеудің негізгі әдістері берілген.

Басыңыз

Push() әдісі массивтің соңына мән қосады.

arr = болсын; arr.push(312); консоль журналы(arr); // →

поп

pop() әдісі массивтен соңғы элементті жояды немесе оның мәнін қайтарады.

arr = болсын; arr.pop(); консоль журналы(arr); // →

Мысал ретінде массивтің соңғы элементінің мәнін алу мүмкіндігін пайдаланып, кескін пішімін аламыз:

img = "https://example.com/img/name.png" болсын; let format = img.split(".").pop(); консоль журналы (пішім); // → png console.log(img.split(".")); // → ["https://example", "com/img/name", "png"]

ауыстыру

unshift() әдісі элементті массивтің басына қосады.

arr = болсын; arr.unshift(312); консоль журналы(arr); // →

ауысым

Shift() әдісі массивтен бірінші элементті жояды.

arr = болсын; arr.shift(); консоль журналы(arr); // → ;

Shift және unshift әдістерін пайдаланған кезде массивтің әрбір элементі өзінің индексін өзгертетінін түсіну керек. Бұл массив үлкен болса, бағдарламаның орындалуын баяулатуы мүмкін.

Сызат

Жолды массивке түрлендіру үшін split() әдісі қолданылады. Split жолды (жолды) көрсетілген параметр бойынша бөледі.

Let str = «Аня, Маша, Саша, Даша»; // бұл жол let arr = str.split(", "); консоль журналы(arr); // → ["Аня", "Маша", "Саша", "Даша"] - массив

қосылу

join() әдісі параметрде көрсетілген бөлгішті пайдаланып алаптың элементтерін жолға біріктіреді.

Let arr = ["Notpad++", "Sublime", "VSCode"]; // бұл массив let str = arr.join(", "); console.log("Код редакторлары: " + str); // → «Код редакторлары: Notpad++, Sublime, VSCode»

тілім

slice() әдісі әдіске берілген бірінші параметрдің индексі бар элементтен бастап, екінші параметрдің индексі бар элементке көзден элементтерді көшіретін жаңа массив жасайды.

Мысалы: slice(3, 7) 3, 4, 5, 6 индекстері бар элементтерді қайтарады. 7 индексі бар элемент массивке қосылмайды.

Теріс мәні бар параметр slice() параметріне берілсе, онда ол параметрде көрсетілген элементтер саны бар, бірақ бастапқы массивтің соңынан алынған жаңа массивді қайтарады.

Бөлім әдісі бастапқы массивді өзгертпейді.

Мұнда slice() әдісі қалай жұмыс істейтінінің кейбір мысалдары берілген:

arr = ["A", "B", "C", "D", "E", "F", "G"] болсын; // 2-ден 5-ке дейінгі индекстері бар элементтері бар массивді қайтарады console.log(arr.slice(2, 5)); // → ["C", "D", "E"] // 3-тен arr.length console.log(arr.slice(3)) аралығындағы индекстері бар элементтері бар жаңа массивді қайтарады; // → ["D", "E", "F", "G"] // Бастапқы массивтің көшірмесін қайтару console.log(arr.slice()); // → ["A", "B", "C", "D", "E", "F", "G"] // Түпнұсқа console.log соңғы үш элементінен тұратын жаңа массивді қайтарады. (arr.slice (-3)); // → ["E", "F", "G"]

жалғау

Splice() әдісі бар элементтерді жою және/немесе жаңаларын қосу арқылы массив мазмұнын өзгертеді.

Синтаксис:

Array.splice(бастау, жоюСанау[, элемент1[, элемент2[, ...]]])

Параметрлер:

  • бастау- Жиымды өзгертуді бастайтын индекс. Егер массив ұзындығынан үлкен болса, нақты индекс массив ұзындығына орнатылады. Теріс болса, элементтің индексін соңынан көрсетеді.
  • жоюСаны- Жиымнан жойылатын ескі элементтердің санын көрсететін бүтін сан. DeleteCount 0 болса, ешбір элемент жойылмайды. Бұл жағдайда кем дегенде бір жаңа элементті көрсету керек. DeleteCount алапта қалдырылған элементтер санынан көп болса, start индексінен бастап, массивтің соңына дейінгі барлық элементтер жойылады.
  • тармақN- Қосымша параметрлер. Жиымға қосылатын элементтер. Ешбір элементті көрсетпесеңіз, splice() жай ғана массивтен элементтерді жояды.

Қайтарылатын мән

Сипаттама

Егер кірістірілетін элементтердің саны жойылатын элементтердің санынан өзгеше болса, массив шақырудан кейін ұзындықты өзгертеді.

arr = [Барса, Шахтер, Манчестер Юнайтед, Милан, Реал Мадрид, Аякс, Ювентус]; let nax = arr.splice(2, 3); arr.splice(2, 3); консоль журналы(nax); // → ["МЮ", "Милан", "Реал"] console.log(arr); // → ["Барс", "Шахтер"] arr.splice(1, 0, "Зенит", "ЦСКА", "Спартак"); консоль журналы(arr); // → [Барса, Зенит, ЦСКА, Спартак, Шахтер]

кері

reverse() әдісі массив элементтерінің ретін өзгертеді. Нәтижесінде массивтің бірінші элементі соңғы болады, ал соңғы элемент бірінші болады.

arr = болсын; console.log(arr.reverse()); // → console.log(["Алиса", "BG", "GO", "DDT"].reverce()); // → ["DDT", "GO", "BG", "Алиса"]

карта

map() әдісі массив элементтерінен өтіп, олармен көрсетілген әрекеттерді орындайды және өзгертілген элементтері бар массивтің көшірмесін қайтарады.

Төмендегі мысалда массивтің әрбір элементі үшін осы элементтің индексінің мәнін қосыңыз (7 + 0, 2 + 1, 15 + 2, 4 + 3, 31 + 4):

arr = болсын; let testMap = arr.map((элемент, индекс) => элемент + индекс); console.log(testMap); //

немесе массивтің әрбір мәнін, мысалы, 12-ге көбейтіңіз

arr = болсын; let testMap = arr.map(a => a * 12); console.log(testMap); // →

сүзгі

Массивтерді сүзу үшін filter() әдісі қолданылады. Ол массив арқылы қайталанады, тек берілген шарттан өтетін элементтерді қайтарады.

Мысалы, біз 21-ден үлкен сандарды қалдырып, массив мәндерін сүземіз

arr = болсын; let testFilter = arr.filter(элемент => элемент > 21); console.log(testFilter); // →

Жиым нәтижесіне 21 қосылмағанын ескеріңіз, себебі шарт 21-ден үлкен нәрсені қайтару болды. Жиымға 21 қосылуы үшін шарт одан үлкен немесе тең болып орнатылады: элемент >= 21

The қосылым()әдіс бар элементтерді жою немесе ауыстыру және/немесе орнына жаңа элементтерді қосу арқылы массивтің мазмұнын өзгертеді.

Бұл интерактивті мысалдың көзі GitHub репозиторийінде сақталады. Интерактивті мысалдар жобасына үлес қосқыңыз келсе, https://github.com/mdn/interactive-examples клондап, бізге тарту сұрауын жіберіңіз.

Синтаксис

let arrDeletedItems = массив .splice(бастау [, deleteCount [, элемент1 [, элемент2 [, ...]]]]])

Параметрлер

бастау Жиымды өзгертуді бастайтын индекс. Егер массив ұзындығынан үлкен болса, бастау массив ұзындығына орнатылады. Теріс болса, ол көптеген элементтерді массивтің соңынан бастайды. (Бұл жағдайда бастапқы -1 , мағынасы - n соңғы n-ші элементтің индексі, сондықтан .length - n массивінің индексіне баламалы.) Егер .length + start массиві 0-ден аз болса, ол 0 индексінен басталады. deleteCount Қосымша Басынан жою үшін массивтегі элементтердің санын көрсететін бүтін сан . DeleteCount алынып тасталса немесе оның мәні .length - start массивіне тең немесе одан үлкен болса (яғни ол басынан бастап массивте қалған элементтер санына тең немесе одан көп болса), онда барлық элементтер массивтің басынан аяғына дейін жойылады.

Ескерту: IE8-де deleteCount алынып тасталса, ол барлығын жоймайды.

DeleteCount 0 немесе теріс болса, ешбір элемент жойылмайды. Бұл жағдайда кем дегенде бір жаңа элементті көрсету керек (төменде қараңыз). item1 , item2 , ... Қосымша Басынан бастап массивке қосылатын элементтер. Ешбір элементтерді көрсетпесеңіз, splice() массивтен элементтерді ғана жояды.

қайтаратын мән

Жойылған элементтерді қамтитын массив.

Тек бір элемент жойылса, бір элементтің массиві қайтарылады.

Ешбір элемент жойылмаса, бос массив қайтарылады.

Сипаттама

Егер кірістірілетін элементтердің көрсетілген саны жойылатын элементтер санынан өзгеше болса, алаптың ұзындығы қоңыраудың соңында әртүрлі болады.

Мысалдар

2 индексінен 0 (нөл) элементті алып тастап, «барабанды» салыңыз

let myFish = ["періште", "клоун", "мандарин", "бекіре"] жойылсын = myFish.splice(2, 0, "барабан") // myFish бұл ["періште", "клоун", "барабан" ", "мандарин", "бекіре"] // жойылды , ешбір элемент жойылған

2 индексінен 0 (нөл) элементті алып тастап, «барабан» мен «гитараны» салыңыз

let myFish = ["періште", "клоун", "мандарин", "бекіре"] жойылсын = myFish.splice(2, 0, "барабан", "гитара") // myFish бұл ["періште", "клоун" ", "барабан", "гитара", "мандарин", "бекіре"] // жойылды - , ешбір элемент жойылған

3 индексінен 1 элементті алып тастаңыз

let myFish = ["періште", "клоун", "барабан", "мандарин", "бекіре"] жойылсын = myFish.splice(3, 1) // жойылды ["мандарин"] // myFish - [" періште», «клоун», «барабан», «бекіре»]

2-индекстен 1 элементті алып тастап, «трубаны» салыңыз

let myFish = ["періште", "клоун", "барабан", "бекіре"] let жойылсын = myFish. splice(2, 1, "труба") // myFish бұл ["періште", "клоун", "труба" ", "бекіре"] // жойылды ["барабан"]

0 индексінен 2 элементті алып тастап, «тотықұс», «анемона» және «көк» енгізіңіз

let myFish = ["періште", "клоун", "труба", "бекіре"] жойылсын = myFish. splice(0, 2, "тотықұс", "анемона", "көк") // myFish бұл ["тотықұс" ", "актин", "көк", "труба", "бекіре"] // жойылды ["періште", "клоун"]

2 индексінен 2 элементті алып тастаңыз

let myFish = ["тотықұс", "анемон", "көк", "труба", "бекіре"] жойылсын = myFish.splice(2, 2) // myFish бұл ["тотықұс", "актин", "бекіре" "] // жойылды ["көк", "труба"]

-2 индексінен 1 элементті алып тастаңыз

let myFish = ["періште", "клоун", "мандарин", "бекіре"] жойылсын = myFish.splice(-2, 1) // myFish бұл ["періште", "клоун", "бекіре"] / / жойылды ["мандарин"]

2-индекстен кейінгі барлық элементтерді алып тастаңыз (соның ішінде)

let myFish = ["періште", "клоун", "мандарин", "бекіре"] жойылсын = myFish.splice(2) // myFish - ["періште", "клоун"] // жойылды ["мандарин" , "бекіре"]

Техникалық сипаттамалар

Техникалық сипаттама Күй Пікір
ECMAScript соңғы жобасы (ECMA-262)
Жоба
ECMAScript 2015 (6-шы шығарылым, ECMA-262)
Осы спецификациядағы "Array.prototype.splice" анықтамасы.
стандартты
ECMAScript 5.1 (ECMA-262)
Осы спецификациядағы "Array.prototype.splice" анықтамасы.
стандартты
ECMAScript 3-ші басылымы (ECMA-262) стандартты бастапқы анықтамасы. JavaScript 1.2-де енгізілген.

Браузер үйлесімділігі

Бұл беттегі үйлесімділік кестесі құрылымдық деректерден жасалған. Деректерге үлес қосқыңыз келсе, https://github.com/mdn/browser-compat-data сайтына кіріп, бізге тарту сұрауын жіберіңіз.

GitHub жүйесінде үйлесімділік деректерін жаңартыңыз

Жұмыс үстеліҰялысервер
ChromeжиегіFirefoxInternet Explorer Операсафариандроид веб-қарауыAndroid жүйесіне арналған ChromeAndroid үшін FirefoxAndroid үшін OperaiOS жүйесіндегі SafariSamsung интернетіNode.js
жалғауChrome Толық қолдау 1Edge Толық қолдау 12Firefox Толық қолдау 1IE Толық қолдау 5.5

ескертпелер

Толық қолдау 5.5

ескертпелер

ескертпелер Internet Explorer 5.5-тен 8-ге дейінгі аралықта, deleteCount алынып тасталса, массивтің барлық элементтері жойылмайды. Бұл әрекет Internet Explorer 9 нұсқасында түзетілді.
Opera Толық қолдау ИәSafari Толық қолдау 1WebView Android толық қолдауы ИәChrome Android Толық қолдау 18Firefox Android толық қолдауы 4Opera Android Толық қолдау ИәSafari iOS Толық қолдау 1Samsung Internet Android Толық қолдау Иәnodejs Толық қолдау Иә

Аңыз

Толық қолдауТолық қолдау Орындау жазбаларын қараңыз. Орындау жазбаларын қараңыз.

Анықтамасы және қолданылуы

JavaScript әдісі қосылым()бар элементтерді жою және/немесе массивке жаңа элементтерді қосу арқылы массивтің мазмұнын өзгертуге мүмкіндік береді.

әдісі екенін ескеріңіз қосылым()жаңаны қайтарудың орнына бар массивді өзгертеді. Жойылған элементтер жаңа Array нысаны ретінде қайтарылады.

Браузерді қолдау

Әдіс
Опера

IExplorer

жиегі
қосылым() ИәИәИәИәИәИә

JavaScript синтаксисі:

// тек индекспен массив.splice( бастау) // жойылатын элементтердің индексі мен санын көрсетеді массив.splice( бастау, жоюСаны) // индексті, жойылатын элементтердің санын көрсету және элементтерді қосу массив.splice( бастау, жоюСаны, элемент1, элемент2, ..., элементX)

JavaScript нұсқасы

ECMAScript 3 (JavaScript 1.2 жүйесінде енгізілген)

Параметр мәндері

ПараметрСипаттама
бастау Элементтер массивтен жойылатын және/немесе массивке қосылатын массивтің индексін көрсететін бүтін сан. Теріс мәндерге рұқсат етіледі, бұл жағдайда әдіс шақырылатын индекс келесі формула бойынша есептеледі: ұзындық (массив ұзындығы) + бастау . Міндетті.
жоюСаны Көрсетілген индекстен бастап массивтен жойылатын элементтердің санын көрсететін бүтін сан бастау. Егер жоюСаны 0, ешбір элемент жойылмайды. Мән болса жоюСанымассивтегі қалған элементтер санынан көп болса, массивтің барлық қалған элементтері жойылады. Қосымша мән, теріс мәндерге жол берілмейді.
элемент (-лар) Жиымға қосылатын элемент немесе элементтер. Жаңа элементтер кірістірілетін массивтің индексі параметрге сәйкес келеді бастау. қосымша мән.

Қолдану мысалы

var x = ; // массиві бар айнымалыны инициализациялау x.splice(3); x.splice(-3 ); // айнымалы мән x.splice(2 , 2 ); // айнымалы мән x.splice(-2 , 2 ); // айнымалы мән x.splice(0 , 2 , "z", шын ); // айнымалы мән ["z", true, 3, "a", "b", "c"] x.splice(3 , 0 , "z", "z", "z"); // айнымалы мән Javascript массивтеріндегі splice() әдісі жаңа элементтерді қосу және ескілерін жою арқылы массивтің мазмұнын өзгертеді.

Синтаксис

Оның синтаксисі келесідей:

Array.splice(индекс, қаншама, [, ..., элементN]);

Параметр мәліметтері

  • индекс - алапты өзгертуді бастайтын индекс.
  • howMany - жойылатын ескі массив элементтерінің санын көрсететін бүтін сан. HowMany 0 болса, ешбір элемент жойылмайды.
  • element1, ..., elementN - массивке қосылатын элементтер. Ешбір элементтерді көрсетпесеңіз, сплайс жай ғана массивтен элементтерді жояды.

Қайтарылатын мән

Өткізілген параметрлер негізінде шығарылған массивді қайтарады.

Мысал

Келесі мысалды қолданып көріңіз.

JavaScript - массивтер. қосу әдісі

Шығару

1 қосқаннан кейін: апельсин, қауын, су, сүт, қант, кофе жойылды: 1 қосқаннан кейін: апельсин, қауын, су, қант, кофе алынып тасталды: сүт
Мақала ұнады ма? Достарыңызбен бөлісіңіз!
Бұл мақала пайдалы болды ма?
Иә
Жоқ
Пікіріңізге рахмет!
Бірдеңе дұрыс болмады және сіздің дауысыңыз есептелмеді.
рахмет. Сіздің хабарламаңыз жіберілді
Мәтіннен қате таптыңыз ба?
Оны таңдаңыз, басыңыз Ctrl+Enterжәне біз оны түзетеміз!