متد splice در javascript

در این مقاله قرار هست که یک بار برای همیشه کاربرد متد splice رو متوجه بشیم.

خودتون رو آماده کنید که قرار کلی ترفند ازش یادبگیرید :)

خب دیگه دست از صحبت بردارم و وارد توضیح این متد بشم (برو که رفتیم ...)


متد splice در آرایه کاربرد دارد و کارش این هست که یک مقداری رو از داخل آرایه حذف کنه و درصورت نیاز جای اون مقدار حذف شده مقدار جدید قرار بده، و اینکه می تواند هیچ مقداری حذف نکند داخل ارایه و فقط در اندیس دلخواه مقدار اضافه کنه. به کد پایین دقت کنید و کامنت ها رو مطالعه کنید حتما ....


همونطور که میبینید return با همون مقادیر رو برمیگردونه دلیلش اینه که من در پارامتر دوم splice مقدار صفر را وارد کردم که همین باعث میشه هیچ مقداری حذف نکنه !!!
همونطور که میبینید return با همون مقادیر رو برمیگردونه دلیلش اینه که من در پارامتر دوم splice مقدار صفر را وارد کردم که همین باعث میشه هیچ مقداری حذف نکنه !!!



خب حالا بریم که یک مقدار رو از داخل آرایه حذف کنیم :)

در کد بالا همونجور که مشاهده میکنید از اندیس صفر به مقدار یک اندیس از داخل آرایه حذف کردیم که همون مقدار 1 این کار کرده :(
در کد بالا همونجور که مشاهده میکنید از اندیس صفر به مقدار یک اندیس از داخل آرایه حذف کردیم که همون مقدار 1 این کار کرده :(



حالا میخوام از از اندیس یک به بعد به مقدار یک اندیس حذف کنم...

خب حالا اگر مشاهده کنید میبینید مقادیر صفر و سه و چهار باقی مانده، بخاطر این هست که گفتم از اندیس اول به بعد دو اندیس رو پاک کن (بازم میگم حتما کامنت ها مشاهده کنید... )
خب حالا اگر مشاهده کنید میبینید مقادیر صفر و سه و چهار باقی مانده، بخاطر این هست که گفتم از اندیس اول به بعد دو اندیس رو پاک کن (بازم میگم حتما کامنت ها مشاهده کنید... )



الان میخوام از اندیس صفر به بعد هرچی هست رو حذف کنم، بهتر بگم میخوام هرچی داخل آرایه دارم رو پاک کنم...

برای این کار کافیه پارامتر اول متد splice رو برابر صفر قرار بدهیم و پارامتر دوم رو هیچی ننویسیم که باعث میشه آرایه مقداری نداشته باشه و یه آرایه خالی باشه

برای این کار کافیه پارامتر اول متد splice رو برابر صفر قرار بدهیم و پارامتر دوم رو هیچی ننویسیم که باعث میشه آرایه مقداری نداشته باشه :)
برای این کار کافیه پارامتر اول متد splice رو برابر صفر قرار بدهیم و پارامتر دوم رو هیچی ننویسیم که باعث میشه آرایه مقداری نداشته باشه :)



بریم که از اندیس دوم به بعد هرچی هست رو پاک کنیم :)

دیگه خودتون استاد شدید:). این دفعه خودت حدس بزن چیکار کردم که این مقادیر return شده.حتما میدونی دیگه نمیدونی؟
دیگه خودتون استاد شدید:). این دفعه خودت حدس بزن چیکار کردم که این مقادیر return شده.حتما میدونی دیگه نمیدونی؟


بخش دوم آموزش.
از اینجا به بعد میخوام هرمقدار که حذف میکنم بجاش یه چیز دیگه بزارم و همینطور یک مقدار رو با splice به آرایه اضافه کنم در هر شماره اندیس که خودم دوست داشتم تو کد ببینید منظورم حتما بهتر متوجه میشید دوستان ...


این کد شاید گیج بشید یکم ولی کد رو ترجمه میکنم متوجه میشید ...

تا پارامتر دوم متد رو که میدونید حتما درسته ؟

( در کل این رو بگم که ما بعد پارامتر دوم در متد splice هرچی مقدار بدیم یعنی باید به آرایه این مقادیر اضافه بشه)

مثلا در قطعه کد بالا گفتم از اندیس صفرم شروع بشه و هیچ مقداری هم حذف نشه و همینطور قبل اندیس صفرم مقدار -1 اضافه بشه (گرفتی الان ؟)



الان میخوام قبل اندیس صفرم بجای اینکه یک مقدار اضافه کنم سه مقدار اضافه کنم ( میخوام اینو بهتون بگم که بعد پارامتر دوم هرچی مقدار بدی به آرایه اضافه میشه دیگه ...)

خب همونجور که مشاهده میکنید از پارامتر سوم به بعد هرچی مقدار بوده به آرایه اضافه شده. همچنین مقدار ها ترتیبی از پارامتر سوم شروع میکنه به اضافه شدن این خیلی مهم هستا!!! مقدار return رو مشاهده کنیم منظورم بهتر متوجه بشید
خب همونجور که مشاهده میکنید از پارامتر سوم به بعد هرچی مقدار بوده به آرایه اضافه شده. همچنین مقدار ها ترتیبی از پارامتر سوم شروع میکنه به اضافه شدن این خیلی مهم هستا!!! مقدار return رو مشاهده کنیم منظورم بهتر متوجه بشید



خب الان میخوام قبل آرایه دوم یک مقدار رو اضافه کنم ...

خب اومدم پارامتر اول بجای اینکه مقدار صفر بدم مقدار دو رو دادم که مشاهده میکنید قبل اندیس دوم آرایه مقدار new اضافه میشود
خب اومدم پارامتر اول بجای اینکه مقدار صفر بدم مقدار دو رو دادم که مشاهده میکنید قبل اندیس دوم آرایه مقدار new اضافه میشود



در این بخش میخوام مقدار یک اندیس حذف کنم و بجاش مقادیری رو قرار بدم

اول بیایم اندیس صفرم رو حذف کنیم و بجای مقدار new رو قرار بدیم

همونجور که از کد ها پیداست برای این  کار کافیه مقدار پارامتر دوم رو تغییر بدیم و به تعداد دلخواه از ارایه مقدار حذف کنیم و بعدش در پارامتر سوم به بعد مقداری که میخواهیم قبل پارامتر اول اضافه بشه رو بنویسیم
همونجور که از کد ها پیداست برای این کار کافیه مقدار پارامتر دوم رو تغییر بدیم و به تعداد دلخواه از ارایه مقدار حذف کنیم و بعدش در پارامتر سوم به بعد مقداری که میخواهیم قبل پارامتر اول اضافه بشه رو بنویسیم



حالا بیایم از اندیس صفرم به بعد دو آرایه حذف کنیم و بجاش new بزاریم

کافیه که پارامتر دوم هرچند مقداری که میخواهیم حذف کنیم قرار بدیم
کافیه که پارامتر دوم هرچند مقداری که میخواهیم حذف کنیم قرار بدیم


بریم سراغ اخرین مثال این بخش: میخوام از اندیس دوم دو ارایه حذف کنم و بجاش سه مقدار قرار بدم.

خب الان همینجور که میبینید اندیس 2و3 پاک شدند و بجای متن new قرار گرفت
خب الان همینجور که میبینید اندیس 2و3 پاک شدند و بجای متن new قرار گرفت



چطور مقداری که حذف میشوند رو بخوانیم ؟؟؟

خب اگر دقت کرده باشید من در مثال های قبل متد splice رو داخل متغیر valueSplice قرار دادم این باعث میشه که هر مقداری که حذف بشه داخل این متغیر قرار بگیره

خب تو این کد من valueSplice رو log زدم که مقادیر 2,3 که پاک شدند return شده(به این دلیل داخل متغیر قرارش میدیم !!!)
خب تو این کد من valueSplice رو log زدم که مقادیر 2,3 که پاک شدند return شده(به این دلیل داخل متغیر قرارش میدیم !!!)


یک مثال دیگه و پایان

خب من با توجه به کد اومدم کل آرایه رو پاک کردم. که همینطور که میبینید آرایه خالی میشه، و valueSplice کل آرایه رو برمیگردونه!!!
خب من با توجه به کد اومدم کل آرایه رو پاک کردم. که همینطور که میبینید آرایه خالی میشه، و valueSplice کل آرایه رو برمیگردونه!!!



بنظر خودم هرچیزی که در مورد متد splice در آرایه ها نیاز بود رو گفتم، دوستان آرایه ها خیلی متد های مهمی دارند که یک فردی که میخواد جاوااسکریپت کار کنه باید اون ها رو خوب درک کنه، من سعیم رو کردم که هرچیزی درباره splice بود رو بگم حالا اینکه خوب یا بد هست با شما !!!.


  • اگر مقاله خوبی بود حتما در نظرات بفرمایید چون اگر راضی بودید با همین روند بهتون در مقاله ها مطالب مهم جاوااسکریپت رو آموزش میدم...
  • نقد و انتقادم فراموش نشه
  • مورد اخر اینکه اگر از مقاله راضی بودید لایک فراموش نشه

ممنون که وقت گذاشتید :