اپراتور پخش در JavaScript با ES 6 معرفی شد که چندین ویژگی عالی را اضافه می کند که کار با آرایه ها و پارامترهای عملکرد را آسان تر می کند. یکی از این ویژگی های معرفی شده با ES 6 (ECMAScript یک استاندارد JavaScript است که به منظور اطمینان از قابلیت همکاری صفحات وب در مرورگرهای مختلف وب) افزودن یک اپراتور پخش است. همانطور که از نام آن پیداست ، اپراتور گسترش مقادیر را در یک آرایه یا یک رشته در یک یا چند استدلال "پخش می کند". به عنوان مثال ، به این مثال نگاهی بیندازید.
محاصره کردن a = [1,2,3]; محاصره کردن b = [4,5,6]; محاصره کردن c = a. concat (b) ؛ کنسول. log (c) ؛ // [1،2،3،4،5،6]
خروجی
[1،2،3،4،5،6]
این روش کار می کند ، اما ما باید برای انجام این عمل عملکرد Concat را به خاطر بسپاریم. این آسانتر خواهد بود اگر می توانستیم آرایه ترکیبی مانند const c = [a ، b] را برگردانیم. بگذارید نگاهی بیندازیم که اگر این رویکرد را در JavaScript امتحان کنیم ، چه اتفاقی می افتد.
محاصره کردن a = [1,2,3]; محاصره کردن b = [4,5,6]; محاصره کردن c = [a ، b] ؛ کنسول. log (c) ؛ // [[1,2,3],[4,5,6]]
خروجی
[[1,2,3],[4,5,6]]
در اینجا ، ما با یک آرایه تو در تو به پایان می رسیم. درعوض ، ما می توانیم از یک حلقه استفاده کنیم ، اما ما را ملزم به نوشتن کد زیادی برای عملیات نسبتاً ساده و مکرر می کنیم. با معرفی اپراتور گسترش ، می توانیم با کد بسیار کم چنین کاری را انجام دهیم. اپراتور پخش (...) آرایه ای می گیرد و مقادیر خود را پخش می کند. به مثال زیر نگاهی بیندازید تا ببینید که چگونه کار می کند:
محاصره کردن a = [1,2,3]; محاصره کردن b = [3,4,5]; محاصره کردن ج = [. آ ، . ب] ؛ کنسول. log (c) ؛ // [1،2،3،4،5،6]
خروجی
[1،2،3،4،5،6]
در اینجا ، اپراتور پخش (...) مقادیر آرایه A و B را می گیرد و آنها را در یک آرایه جدید پخش می کند. c. اپراتور گسترش نیز می تواند در تماس های عملکردی مورد استفاده قرار گیرد. بعداً در این مقاله به چندین مورد استفاده از اپراتور پخش خواهیم پرداخت.
اپراتور REST در JavaScript چیست؟
اپراتور REST همچنین در JavaScript با ES 6 معرفی شد و هر دو اپراتور بقیه و گسترش از سه نقطه (…) استفاده می کنند. بگذارید مثالی را بررسی کنیم تا مشکلی را مشاهده کنیم که اپراتور استراحت به ساده کردن کمک می کند.
تابع چند تایی() اجازه دهید args = آرایه. از جانب(استدلال); اجازه دهید FinalArray = args. map (در یک => ele * 2); کنسول. log (FinalArray) ؛> MultipleAreg (1, 2); MultipleAreg (4, 2, 4);
خروجی
[2 ، 4][8 ، 4 ، 8]
اینگونه است که ما می توانستیم قبل از معرفی ES 6 ، عملکرد خود را بنویسیم زیرا شیء آرگومان آرایه ای نیست و ما ابتدا از روش آرایه ای استفاده می کنیم. اگرچه این روش صحیح است و کار می کند اما بسیار پیچیده تر است. اپراتور REST در JavaScript راهی برای دستیابی به نتایج مشابه در یک روش تمیزتر و آسان تر برای کار با پارامترهای نامشخص فراهم می کند. بیایید ببینیم که چگونه می توان با پارامترهای استراحت ، نتایج مشابه را بدست آورد.
تابع چند تایی(بشراستدلال) اجازه دهید FinalArray = args. map (در یک => ele * 2); کنسول. log (FinalArray) ؛> MultipleAreg (1, 2); MultipleAreg (4, 2, 4);
خروجی
[2 ، 4][8 ، 4 ، 8]
در اینجا ، با کمک پارامترهای استراحت که مانند اپراتور پخش ، از سه نقطه (…) استفاده می کنیم ، می توانیم پارامترهای نامحدود را به یک عملکرد منتقل کنیم. به عنوان مثال ، تمام پارامترهای موجود در کد فوق در ARG ها به عنوان یک آرایه در داخل عملکرد موجود است. این روش استفاده از اپراتور REST باعث می شود کد ما خواندن و حذف خطوط غیر ضروری را به صورت کد آسانتر کند.
تفاوت بین اپراتورهای گسترش و استراحت در JavaScript چیست؟
اگرچه هر دو اپراتور در JavaScript نحو یکسان دارند ، یعنی سه نقطه (...) ، این اپراتورها یکسان نیستند و کارهای مختلفی را انجام می دهند.
تفاوت اصلی این دو اپراتور در نام آنها نهفته است. اپراتور گسترش در JavaScript مقادیر را در آرایه ها و رشته ها به عناصر جداگانه گسترش می دهد ، در حالی که ، اپراتور REST ، مقادیر داده های مشخص شده توسط کاربر را در یک آرایه JavaScript قرار می دهد. بگذارید برای درک این تفاوت به مثال زیر نگاهی بیندازیم:
تابع گسترش یافته (Firstarg ، Secondarg ،. یارگ دیگر) کنسول. log (Firstarg ، SecondArg) ؛ کنسول. log (OtherArgs) ؛> PRESPANDREST (. [1,2,3,4,5,6]);
خروجی
1 2[3،4،5،6]
در مثال بالا ، ما از اپراتور REST استفاده می کنیم ... NotherArgs در پارامتر عملکرد برای قرار دادن مقادیر منتقل شده در تماس عملکرد (3 ، 4 ، 5 ، 6) در یک آرایه قرار می گیرد. به طور مشابه ، استفاده از اپراتور گسترش در حین عملکرد ، به گسترش عناصر یک آرایه در عناصر فردی به عملکرد PRESPANDANDREST کمک می کند.
نمونه هایی برای اپراتور گسترش در JavaScript
بگذارید کاربردهای اپراتور گسترش را در موارد مختلف در JavaScript مشاهده کنیم.
1. به معنای واقعی کلمه
محاصره کردن mylocations = ["دهلی", "حیدرآباد"] محاصره کردن FriendsLocations = ["بمبئی"،mylocations ، "بنگلور"]; کنسول. log (FriendsLocations)
خروجی
['بمبئی' ، 'دهلی' ، 'حیدرآباد' ، 'بنگلور']
در اینجا ، از اپراتور پخش (.) برای کپی کردن مقادیر یک آرایه آرایه در یک آرایه دوستان متفاوت استفاده می شود.
2. از عملگر spread برای جدا کردن رشته ها از آیتم های آرایه استفاده کنید
محاصره کردن collegename = "IIT DELHI"; کنسول. log ([. collegeName])
خروجی
['I'، 'I'، 'T'، ' '، 'D'، 'E'، 'L'، 'H'، 'I']
در مثال بالا، از عملگر spread (. ) در یک آرایه برای جدا کردن کاراکترهای مجزا در رشته collegeName استفاده کردیم. به همین دلیل است که "IIT DELHI" به ['I', 'I', 'T', ' ', 'D', 'E', 'L', 'H', 'I'] گسترش یافت.
3. اپراتور Spread در فراخوانی تابع
محاصره کردن functionArgs = [1,2,3,4]; تابع ضرب عدد (آ ب پ ت) برگشت آ ب پ ت؛> کنسول. log(multiplyNumbers(. functionArgs));
خروجی
در مثال بالا، از عملگر spread (. ) برای گسترش محتوای آرایه functionArgs در چهار پارامتر تابع multiplyNumbers استفاده کردیم. اگر بیش از چهار عدد به تابع ارسال شود، تابع چهار مقدار شروع را در نظر می گیرد و مقادیر باقی مانده را نادیده می گیرد.
4. عملگر Spread با اشیاء
محاصره کردن نام =نام کوچک: "اشان", نام خانوادگی: "شارما" >; محاصره کردن بیو =<. name, کار: "SDE1" >; کنسول. log(bio. firstName);
خروجی
ایشان
در قطعه بالا، از عملگر spread (. ) در داخل شیء بیو برای گسترش مقادیر نام آرایه به خصوصیات فردی در شی استفاده کردیم. همچنین، به یاد داشته باشید که عملگر spread نمی تواند مقادیر واقعی شی را گسترش دهد. اما می توان از آن برای کلون کردن اشیاء جاوا اسکریپت، مانند شکل زیر استفاده کرد.
محاصره کردن firstObj ="نام کوچک" : "اشان", "نام خانوادگی" : "شارما"> محاصره کردن secondObj = . firstObj،"سن" : "22"> کنسول. log(secondObj. firstName);
خروجی
ایشان
نمونه هایی برای Rest Operator در Javascript**
اکنون که کاربردهای عملگر spread را فهمیدیم، بیایید نمونه هایی از عملگر rest را در جاوا اسکریپت ببینیم.
1. استراحت اپراتور در پارامتر تابع
تابع تست استراحت(. ارزش های) برگشت ارزش های؛> کنسول. log(testRest("اشان", "راهول"))
خروجی
["اشعان"، "راهول"]
در اینجا، می توانیم از خروجی مشاهده کنیم که عملگر rest آرگومان های ارسال شده به تابع testRest را در یک آرایه جاوا اسکریپت جمع آوری می کند.
2. استراحت اپراتور در انتساب تخریب ساختار
عملگر rest را می توان برای تخریب آخرین متغیرها در انتساب استفاده کرد. این در قطعه کد ذکر شده در زیر نشان داده شده است.
محاصره کردن [نام و نام خانوادگی، . اطلاعات دیگر] = ["راهول", "مهاجان", "توسعه دهنده وب", "گوگل هند", "نر"]; کنسول. log(otherInfo);
خروجی
["توسعه دهنده وب"، "Google India"، "Male"]
در مثال بالا، عملگر rest ( . ) مقادیر باقیمانده ارسال شده توسط کاربر را به یک آرایه اضافه می کند و مقدار را به متغیر otherInfo اختصاص می دهد. همچنین می توانیم تماس بگیریم. otherInfo به عنوان یک متغیر استراحت.
در مورد اپراتورهای مقایسه در JavaScript بیاموزید
اکنون که با اپراتور پخش و استراحت در JavaScript آشنا هستید ، می توانید اطلاعات بیشتری در مورد
- اپراتورهای مقایسه در جاوا اسکریپت
نتیجه
- هر دو اپراتور گسترش و استراحت با ES 6 به JavaScript معرفی شدند و هر دو اپراتور با نقاط سه گانه (.) نشان داده شده اند.
- اپراتور گسترش مقادیر را در یک آرایه یا یک رشته در یک یا چند آرگومان پخش می کند.
- اپراتور REST به ما اجازه می دهد تا با جمع کردن این چندین مقدار در یک آرایه ، تعداد نامحدودی از آرگومان ها را منتقل کنیم.
- هر دو اپراتور گسترش و استراحت در جاوا اسکریپت یکپارچه هستند ، اما عملکردهای مختلفی را انجام می دهند.
- اپراتور گسترش در JavaScript مقادیر را در آرایه ها و رشته ها به عناصر جداگانه گسترش می دهد ، در حالی که اپراتور REST مقادیر داده های مشخص شده توسط کاربر را در یک آرایه JavaScript قرار می دهد.< SPAN> در مورد اپراتورهای مقایسه در JavaScript بیاموزید
فارکس کاران ایران...
ما را در سایت فارکس کاران ایران دنبال می کنید
برچسب : نویسنده : ديناروند فهيمه بازدید : 39 تاريخ : پنجشنبه 26 مرداد 1402 ساعت: 16:19