اینترنت پنجره ها اندروید

توابع و شرایط اگر دیگر در جاوا اسکریپت. اپراتورهای مشروط در جاوا اسکریپت - طراحی اگر دیگر - شرایط در جاوا اسکریپت - مبانی اگر دیگر مثال های js

اپراتورهای مشروط

اپراتورهای شرطی به شما این امکان را می دهند که بسته به مقدار بیان مشخص شده، اپراتورهای دیگر را پرش کنید یا انجام دهید. این اپراتورها در برنامه تصمیم گیری هستند و گاهی اوقات آنها نیز نامیده می شوند اپراتورهای "شاخه".

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

اگر / اپراتور دیگر

بیانیه IF یک کنترل کننده اساسی است که به مترجم جاوا اسکریپت اجازه می دهد تا راه حل ها را ایجاد کند یا دقیق تر، اپراتورها را بسته به شرایط انجام دهند. اپراتور اگر دو فرم داشته باشد. اولین:

اگر (بیان) اپراتور

در این فرم، بیان اول محاسبه می شود. اگر نتیجه درست باشد، اپراتور اجرا می شود. اگر عبارت یک مقدار نادرست را بازبینی کند، اپراتور اجرا نمی شود. مثلا:

اگر (USERNAME \u003d\u003d NULL) // اگر متغیر نام کاربری نام کاربری یا نامشخص نامشخص باشد \u003d "الکس"؛ // تعیین آن

لطفا توجه داشته باشید که براکت های اطراف بیان شرطی بخش اجباری از نحو اپراتور است.

فرم دوم اپراتور IF وارد طراحی دیگر، که در مواردی انجام می شود که بیان یک مقدار نادرست را به دست می آورد. نحو آن:

اگر (بیان) اپراتور 1 اپراتور دیگر 2

این فرم اپراتور را انجام می دهد اگر عبارت مقدار واقعی را بازبینی کند و اپراتور 2، اگر عبارت مقدار کاذب را بازبینی کند. مثلا:

اگر (n \u003d\u003d 1) console.log ("1 پیام جدید دریافت شده")؛ دیگر console.log ("دریافت شده" + n + "پیام های جدید")؛

اپراتور دیگر اگر.

بیانیه اگر / else مقدار بیان را محاسبه و یک قطعه یا یک قطعه دیگر از کد برنامه را انجام می دهد، بسته به نتیجه. اما اگر شما نیاز به اجرای یکی از قطعات بسیاری دارید؟ یک راه ممکن برای انجام این کار این است که اگر بیانیه ای باشد، اعمال شود. به طور رسمی، این یک اپراتور مستقل جاوا اسکریپت نیست؛ این تنها یک سبک برنامه نویسی مشترک است که شامل اعمال تکراری اگر اپراتور / ELS دیگر باشد:

اگر (n \u003d\u003d 1) (/ / انجام بلوک 1) دیگر اگر (n \u003d\u003d 2) (// run block 2) else (n \u003d\u003d 3) (// run block 3) else (/ / اگر نه یکی از اظهارات قبلی دیگر اعدام نشد، بلوک 4 را اجرا کرد)

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

اپراتور سوئیچ

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

اپراتور سوئیچ برای چنین شرایطی طراحی شده است. کلید واژه سوئیچ باید در براکت ها و بلوک کد در براکت های فرفری بیان شود:

سوئیچ (بیان) (دستورالعمل)

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

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

کار اپراتور سوئیچ دشوار است برای توضیح در کلمات، به نظر می رسد بسیار واضح تر توضیح در مثال. بیانیه سوئیچ زیر معادل تکرار است اگر / اپراتورهای دیگر نشان داده شده در مثال قبلی:

سوئیچ (n) (مورد 1: // اجرا می شود اگر n \u003d\u003d\u003d 1 // اجرا بلوک 1 شکستن؛ // اینجا توقف مورد 2: // انجام اگر n \u003d\u003d\u003d 2 // اجرای بلوک 2 شکستن؛ / / اینجا شروع مورد 3: // انجام می شود اگر n \u003d\u003d\u003d 3 // اجرای بلوک 3 شکستن؛ // توقف پیش فرض: // اگر همه چیز دیگر مناسب نیست ... // اجرای بلوک 4 شکستن؛ //)

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

در غیاب اپراتورهای شکستن، اپراتور سوئیچ شروع به اجرای بلوک کد با برچسب مورد مربوط به مقدار بیان، و ادامه به انجام اپراتورها تا زمانی که به پایان بلوک رسیدن. در موارد نادر، این برای نوشتن یک کد برنامه مفید است که از یک علامت مورد به یک بعدی می رود، اما در 99٪ موارد باید هر بلوک از شکست اپراتور مورد را به دقت تکمیل کند. (هنگام استفاده از سوئیچ داخل تابع به جای شکستن، می توانید از بیانیه بازگشت استفاده کنید. هر دو از این اپراتورها برای تکمیل عملیات اپراتور سوئیچ استفاده می شوند و از انتقال به برچسب بعدی استفاده می کنند.)

زیر نمونه ای عملی تر از استفاده از بیانیه سوئیچ است، مقدار را به یک رشته در یک روش وابسته به نوع مقدار تبدیل می کند:

تابع تبدیل (X) (سوئیچ (Typeof X) (// / / تبدیل یک عدد به یک عدد صحیح هگزادسیمال "شماره": بازگشت x.tostring (16)؛ // بازگشت یک رشته در مورد "رشته": بازگشت "" " + X + "" "؛ // هر نوع دیگر به طور پیش فرض به طور پیش فرض تبدیل می شود: بازگشت x.tostring ()؛)) console.log (تبدیل (1067))؛ // نتیجه "42b"

لطفا توجه داشته باشید که در دو نمونه قبلی، اعداد یا رشته های رشته ای به دنبال کلمات کلیدی هستند. این همان چیزی است که بیانیه سوئیچ اغلب در عمل استفاده می شود، اما استاندارد ECMAScript به شما اجازه می دهد تا عبارات دلخواه را پس از مورد مشخص کنید.

اپراتور سوئیچ ابتدا عبارت را پس از کلید واژه سوئیچ محاسبه می کند و سپس عبارات موردی را به ترتیب مشخص می کند که در آن مشخص می شود تا زمانی که مقدار تصادف یافت شود. واقعیت این تصادف با استفاده از اپراتور هویت \u003d\u003d\u003d تعیین می شود، و استفاده از اپراتور برابری \u003d\u003d، بنابراین، عبارات باید بدون هیچ گونه تبدیل انواع مطابقت داشته باشند.

از آنجایی که اجرای هر یک از اپراتورهای سوئیچ، همه عبارات موردی محاسبه نمی شود، استفاده از عبارات موردی که عوارض جانبی دارند، از جمله تماس های مختلف و تکالیف، باید اجتناب شود. SOSTLY ALL در بیان عبارات ثابت ثابت محدود است.

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

منبع این مثال تعاملی در مخزن Github ذخیره می شود. اگر دوست دارید به پروژه نمونه های تعاملی کمک کنید، لطفا https://github.com/mdn/interactive-examples را کلون کنید و درخواست خود را برای ما ارسال کنید.

نحو

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

شرح.

چندگانه اگر ... دولت های دیگر را می توان در صورتی که در صورتی که بخواهید، ایجاد شود. توجه داشته باشید که هیچ erseif (در یک کلمه) کلمه کلیدی در جاوا اسکریپت وجود ندارد.

if (condition1) shasion1 else (condition2) statement2 دیگری اگر (condition3) shasion3 ... else statementn

برای دیدن این که چگونه این کار می کند، این است که چگونه آن را به نظر می رسد اگر لانه سازی به درستی از بین برود:

اگر (condust1) statement1 دیگری اگر (condition2) shasion2 else (condition3) ...

برای اجرای اظهارات چندگانه در یک بند، از یک بیانیه بلوک ((...)) برای گروه بندی این کشورها استفاده کنید. به طور کلی، این یک تمرین خوب است که همیشه از دولت های بلوک استفاده کنید، به خصوص در کد که شامل موارد زیر است، اگر دولت ها:

اگر (شرط) دیگری (States2)

مقادیر بولی اولیه را درست نکنید و با حقیقت یا تقصیر شیء بولین نادرست باشید. هر مقدار که نادرست، نامشخص، null، null، null، 0، -0، nan، یا رشته خالی ("") و هر گونه اطاعت، از جمله یک شیء بولی که ارزش آن نادرست است، به عنوان شرایط مورد استفاده قرار می گیرد. مثلا:

var b \u003d بولین جدید (اشتباه)؛ اگر (ب) // این شرایط تروبه است

مثال ها.

با استفاده از اگر ... دیگر

اگر (cipher_char \u003d\u003d\u003d from_char) (نتیجه \u003d نتیجه + to_char؛ x ++؛) else (نتیجه \u003d نتیجه + clear_char؛)

با استفاده از دیگری اگر.

توجه داشته باشید که Syntax Elsif در جاوا اسکریپت وجود ندارد. با این حال، شما می توانید آن را با یک فضای بین دیگر بنویسید و اگر:

اگر (x\u003e 50) (/ * doo راست * /) دیگر اگر (x\u003e 5) (/ * doo حق آن * /) دیگر (/ * درست آن را * /)

تخصیص در بیان شرطی

توصیه می شود که از تکالیف ساده در بیان شرطی استفاده نکنید، زیرا این تخصیص را می توان با برابری در هنگام نگاه کردن بر روی کد اشتباه گرفت. به عنوان مثال، از کد زیر استفاده نکنید:

اگر (x \u003d y) (/ / * doo حق آن * /)

اگر شما نیاز به استفاده از یک تخصیص در بیان شرطی دارید، یک عمل معمول این است که پرانتز های اضافی را در اطراف انتساب قرار دهید. مثلا:

اگر ((x \u003d y)) (/ * doo حق آن * /)

مشخصات فنی.

مشخصات وضعیت اظهار نظر
ECMAScript آخرین پیش نویس (ECMA-262)
پیش نویس.
Ecmascript 2015 (نسخه 6، ECMA-262)
تعریف "IF بیانیه" در این مشخصات.
استاندارد
Ecmascript 5.1 (ECMA-262)
تعریف "IF بیانیه" در این مشخصات.
استاندارد
Ecmascript 3rd Edition (ECMA-262)
تعریف "IF بیانیه" در این مشخصات.
استاندارد
نسخه ECMAScript 1st (ECMA-262)
تعریف "IF بیانیه" در این مشخصات.
استاندارد تعریف اولیه

سازگاری مرورگر

جدول سازگاری در این صفحه از داده های ساختاری تولید می شود. اگر شما دوست دارید به داده ها کمک کنید، لطفا https://github.com/mdn/browser-comata را بررسی کنید و درخواست خود را برای ما ارسال کنید.

اطلاعات سازگاری به روز رسانی در GitHub

دسکتاپ.سیارسرور
کرومحاشیه، غیرمتمرکز.فایرفاکساینترنت اکسپلورر.اپراصفریAndroid WebView.کروم برای آندرویدفایرفاکس برای آندرویداپرا برای آندرویدصفری در iOS.سامسونگ اینترنتnode.js.
اگر دیگریپشتیبانی کامل کروم 1لبه کامل پشتیبانی 12پشتیبانی کامل فایرفاکس 1یعنی پشتیبانی کامل 3اپرا کامل پشتیبانی بلهپشتیبانی کامل صفری بلهWebView Android پشتیبانی کامل 1کروم آندروید پشتیبانی کامل 18پشتیبانی کامل از فایرفاکس آندروید 4اپرا آندروید پشتیبانی کامل بلهSafari iOS پشتیبانی کامل بلهسامسونگ اینترنت Android پشتیبانی کامل 1.0پشتیبانی کامل Nodejs بله

var a \u003d 10؛ var b \u003d (a\u003e 1)؟ 100: 200؛ هشدار (ب)؛

اگر شرایط a\u003e 1 درست است، سپس متغیر ب یک مقدار را تعیین کنید 100 در غیر این صورت متغیر b مقدار را تعیین می کند 200 .

JS 3_4 وظیفه. برای تکمیل کد: 3 متغیرهای محلی با استفاده از کلید واژه Var اعلام می شوند. لازم است که ارزش بیانیه سه گانه بعدی را در متغیر حداکثر اختصاص دهیم: اگر A بزرگتر از B باشد، پس از آن بازگردید، در غیر این صورت ما B را بازگردانیم.
قطعه کد:

اگر (a * b< 6) { result = "Мало"; } else { result = "Много"; }


سوالات برای کنترل خود:

  1. نحو اپراتور سه تایی چیست؟
  2. چند استدلال دارای یک اپراتور سه گانه است؟

سوئیچینگ اپراتور در جاوا اسکریپت - سوئیچ

اپراتور جاوا اسکریپت سوئیچ برای بررسی متغیر به مقادیر مختلف عمل می کند:

نحو:

سوئیچ (متغیر یا بیان) (مورد گزینه 1: // //..block اپراتورها .. Break Case Option2: //..block اپراتورها .. Break Default: //..block operators ..)

مقدار یک متغیر یا عبارت بررسی شده است: در هر کدام مورد یکی از مقادیر بررسی شده است، در مورد یک مقدار مناسب، یک بلوک دیگر از اپراتورهای مربوط به این مورد.

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

مهم: اپراتور شکستن پس از هر یک از مقدار متغیر در نظر گرفته شده مورد نیاز است (پس از هر مورد) اگر از آن استفاده نکنید، تمام اپراتورها زیر نمایش داده می شوند.

مقایسه با اپراتور اگر:

var a \u003d 2؛ سوئیچ (a) (مورد 0: // اگر (a \u003d\u003d\u003d 0) مورد 1: // اگر (a \u003d\u003d\u003d 0) هشدار ("صفر یا یک")؛ // سپس ما را ... شکستن؛ مورد 2: // اگر (A \u003d\u003d\u003d 2) هشدار ("دو")؛ // سپس ما را ... شکستن؛ پیش فرض: // elser هشدار ("بسیاری")؛ // در غیر این صورت ما ... )

چگونه چندین گزینه را گروه بندی کنیم؟

برای انجام همان اپراتورها، گروهی از چندین مورد. همانطور که در مثال بالا:

مورد 0: مورد 1: هشدار ("صفر یا یک")؛ زنگ تفريح؛ ...

در A \u003d 0 و A \u003d 1، همان اپراتور انجام می شود: هشدار ("صفر یا یک")؛

مثال 4: ارسال از کاربر برای وارد کردن رنگ. نمایش ترجمه به ورودی انگلیسی برای رنگ "آبی" و "آبی" همان مقدار را ارسال کنید


✍ راه حل:
  • یک صفحه وب را با اسکلت HTML و برچسب ایجاد کنید اسکریپت.
  • متغیر را شروع کنید رنگ
  • var color \u003d prompt ("چه رنگ؟")؛

    var color \u003d prompt ("چه رنگ؟")؛

  • مقدار متغیر را با استفاده از طراحی بررسی کنید switshبا نمایش هر مقدار - ترجمه مربوطه:
  • سوئیچ (رنگ) (مورد "قرمز": هشدار ("قرمز")؛ شکستن؛ مورد "سبز": هشدار ("سبز")؛ شکستن؛ // ...

    اگر متغیر باشد رنگاین معنای "قرمز" را دارد، سپس ترجمه را به پنجره مدال انتقال دهید - "قرمز" و خروج از طراحی (شکستن؛). اگر متغیر باشد رنگ این معنای "سبز" را دارد، برای نمایش در پنجره مدال - "سبز" و خروج از طراحی (شکستن؛).

  • برای گل ها "آبی" و "آبی" گروه بندی را انجام دهید:
  • // ... مورد "آبی": مورد "آبی": هشدار ("آبی")؛ زنگ تفريح؛ // ...

    اگر متغیر باشد رنگاین معنای "آبی" یا متغیر دارد رنگاین معنای "آبی" را دارد، سپس ترجمه را به پنجره مودال نمایش دهید - "آبی" و خروج از طراحی (شکستن؛).

  • سازماندهی خروجی برای آن رنگ هایی که توسط برنامه ارائه نشده اند:
  • // ... پیش فرض: هشدار ( "ما هیچ اطلاعاتی در مورد این رنگ نداریم")) // پایان سوئیچ

    // ... پیش فرض: هشدار ("Y ما اطلاعاتی در مورد این رنگ نداریم") // پایان سوئیچ

  • اسکریپت تست در مرورگر.

JS 3_6 وظیفه. خطاهای کد زیر را پیدا کنید و تصحیح کنید:

14 15 16 17 var number \u003d prompt ( "شماره 1 یا 2 را وارد کنید:") سوئیچ (مورد "1" (document.write (یک ")؛)؛ شکستن؛ مورد" 2 "(document.write (" دو ")؛)؛ شکستن؛ پیش فرض (document.write (document.write "شما یک مقدار به غیر از 1 و 2 وارد کرده اید) ; } ; }

var number \u003d prompt ("شماره 1 یا 2 را وارد کنید:")؛ سوئیچ (CASE "1" (document.write (یک ")؛)؛ شکستن؛ مورد" 2 "(document.write (" دو ")؛)؛ شکستن؛ پیش فرض (document.write (" شما ارزش دیگری را به غیر از 1 معرفی کردید و 2 ")؛)؛)


JS 3_7 وظیفه. هنگام انجام کد بعدی چه چیزی بر روی صفحه نمایش نمایش داده می شود؟

1 2 3 4 5 6 7 8 9 10 11 12 13 var value \u003d "2"؛ سوئیچ (ارزش) (مورد "1": مورد "2": مورد "3": document.write ("سلام")؛ شکستن؛ مورد "4": مورد "5": document.write ("جهان")؛ پیش فرض: document.write ("خطا")؛)

var value \u003d "2"؛ سوئیچ (ارزش) (مورد "1": مورد "2": مورد "3": document.write ("سلام")؛ شکستن؛ مورد "4": مورد "5": document.write ("جهان")؛ پیش فرض: document.write ("خطا")؛)


JS 3_8 وظیفه. کاربر درخواست شماره - تعداد راننده در شاخه. بسته به شماره وارد شده (نه بیش از 10)، پیام خروجی: - نشسته در شاخه 1 کلاغ - نشسته در شاخه 4 کلاغ - نشسته در شاخه 10 رون

  1. بسته به شماره معرفی شده، پایان کلمه تغییر می کند "کلاغ".
  2. برای بررسی استفاده از اپراتور جاوا اسکریپت سوئیچ.
  3. این صفحه را در پوشه نتایج ذخیره کنید (برای کار بیشتر مفید است).


سوالات برای کنترل خود:

  1. در این صورت، آن را به عنوان یک اپراتور مشروط برای استفاده از طراحی توصیه می شود تعویض?
  2. بلوک پیش فرض در اپراتور چیست؟ تعویض?
  3. لازم است از اپراتور شکستن در طراحی استفاده کنید تعویض?
  4. چگونه گروه بندی برای چندین گزینه برای ارزش ها در اپراتور انجام می شود تعویض?

اپراتورهای چرخه ای از زبان جاوا اسکریپت - برای

نحو:

برای (مقدار اولیه شمارنده؛ شرایط؛ افزایش شمارنده) (/ / / operators..block ..)

مهم: چرخه در جاوا اسکریپت برای استفاده می شود زمانی که آن را پیش از آن شناخته شده است که چند بار اقدامات cyclic باید تکرار شود (چند تکرار در چرخه)

  • به عنوان یک مقدار اولیه از تکرار سنج، یک عبارت تخصیص استفاده می شود: به عنوان مثال، i \u003d 0 - شمارنده چرخه از ابتدا شروع می شود:
  • برای (var I \u003d 0؛ شرایط؛ افزایش شمارنده) (/ / / operators..block ..)

  • به عنوان افزایش شمارنده، گام نشان داده شده است که با آن متر باید افزایش یابد: به عنوان مثال، نشان می دهد که هر تکرار چرخه همراه با افزایش در 1 :
  • برای (var i \u003d 0؛ شرایط؛ I ++) (/ / / operators..block ..)

  • شرایط چرخه ارزش نهایی متر است: به عنوان مثال، i10، چرخه را متوقف می کند:
  • برای (var i \u003d 0؛ i<10; i++) { //..блок операторов.. }

یک مثال از استفاده از چرخه را در جاوا اسکریپت در نظر بگیرید:

مثال 5: دنباله ای از اعداد را نمایش دهید 0 1 2 3 ... 9 ، هر رقمی - از یک خط جدید. 0 1 2 ... 8 9


✍ راه حل:
  • برای نمایش دنباله ای از اعداد، ما از شمارنده چرخه استفاده خواهیم کرد که باید ارزش آن را تغییر دهد 0 قبل از 9 با توجه به دنباله
  • بنابراین برای مقدار اولیه شمارنده چرخه مقدار برابر را تنظیم کنید 0 ؛ مانند شرایط چرخه مقدار نهایی را تعیین کنید - II \u003d 9؛ شمارنده گام باید برابر باشد 1 (I ++)، از آنجا که تفاوت بین اعضای توالی یکی است:
  • برای (var i \u003d 0؛ i<10; i++) { document.write(i+"
    "); }

    در مثال، مقادیر مقابله با چرخه روی صفحه نمایش داده می شود، زیرا افزایش شمارنده I ++ به ترتیب بر روی صفحه نمایش ظاهر می شود 0 1 2 3 ... 9 ، و هر رقمی - از یک خط جدید (برچسب
    ).

  • اسکریپت تست در مرورگر.

JS 3_9 وظیفه. 1 قبل از 15 .

  1. به عنوان یک دنباله ای از اعداد، از شمارنده چرخه استفاده کنید برای.
  2. برای یک متغیر افزودنی، از شناسه متغیر استفاده کنید مجموع.

قطعه کد:

برای (var i \u003d ...؛ ...؛ ...) (مجموع \u003d مجموع + ...؛) ...

اپراتورهای خروجی چرخه زنگ تفريح و ادامه هید. در جاوا اسکریپت. اپراتور خروج

اپراتور شکستن کل بدن چرخه را قطع می کند، I.E. خروج از چرخه به جاوا اسکریپت.

در حالی که اپراتور ادامه اجرای تکرار فعلی چرخه را قطع می کند، اما، در حالی که ادامه اجرای چرخه از تکرار زیر را ادامه می دهد.

کار شکستن را در نظر بگیرید و اپراتورها را ادامه دهید:

مثال: الگوریتم قطعه کد کد را خالی می کند. چه خواهد شد؟

قطعه کد:

1 2 3 4 5 6 برای (var i \u003d 0؛ i< 10 ; i++ ) { if (i== 4 ) continue ; document.write (i+ "
") اگر (I \u003d\u003d 8) شکستن؛)

برای (var i \u003d 0؛ i<10;i++) { if (i==4) continue; document.write(i+"
") اگر (I \u003d\u003d 8) شکستن؛)


✍ راه حل:
  • در خط سوم از مثال، شرایطی وجود دارد که این رقم وجود دارد 4 نمایش داده نمی شود: اپراتور ادامه هید.بدون تکمیل فعلی، به تکرار بعدی چرخه بروید.
  • در خط شماره 5 خروج از چرخه، اما در همان زمان شکل 8 نمایش داده خواهد شد، از آنجا که بیانیه خروجی به شرایط (در خط چهارم) است. ملاقات زنگ تفريحمترجم عملیات چرخه را کامل خواهد کرد.
  • بنابراین بر روی صفحه نمایش خواهد بود: 0 1 2 3 5 6 7 8 - هر رقمی از یک خط جدید.

JS 3_10 کار. مجموع مجموع عدد صحیح را از بین ببرید 1 قبل از 15 ، از بین بردن تعداد کل تعداد 5 و 7 .

اپراتور خروج

زبان Javasctipt یک اپراتور خروج از کد برنامه را فراهم می کند - بیانیه خروج.
اغلب، اپراتور برای حذف خطای ورود کاربر استفاده می شود.


یک مثال را در نظر بگیرید:

مثال 6: درخواست کاربر یک عدد را وارد کنید اگر شماره وارد نشده باشد، یک پیام را نمایش دهید. "تعداد لازم است!" و کار برنامه را متوقف کنید.


✍ راه حل:
  • متغیر را شروع کنید عدد مقدار وارد شده توسط کاربر در پنجره مودال:
  • var number \u003d prompt ("شماره را وارد کنید")؛

  • با استفاده از تابع Parseint از تبدیل ردیف به یک عدد صحیح، بررسی کنید که آیا مقدار وارد شده شماره است:
  • شماره \u003d parseint (شماره)؛ // بازگشت nan - نه شماره

    در صورتی که شماره وارد نشود، تابع ارزش نان را به دست می آورد (از انگلیسی. نه یک عدد - شماره نه)

  • مقدار متغیر را بررسی کنید عدد با استفاده از عملکرد Isnan:
  • x \u003d Isnan (شماره)؛ // بازگشت درست اگر مقدار عددی نیست

    عملکرد Isnan ارزش را باز می گرداند درست است، واقعی. در صورتی که متغیر یک عدد نیست

  • توسط قوانین "دروغ" بررسی متغیر ارزش متغیر ایکس.. اگر مقدار خروجی عددی نیست، نظر مربوطه و برنامه را کامل کنید:
  • اگر (x) (هشدار ("شماره!")؛ خروج؛ // از برنامه خارج شوید)

  • برای ادامه برنامه (اگر مقدار وارد شده شماره بود)، پنجره زیر را با یک منبع ورودی خروجی کنید:
  • هشدار ("شماره دوم را وارد کنید")؛ // هنگامی که وارد می شوید، اپراتور اجرا نمی شود

  • اسکریپت تست در مرورگر.

سوالات برای کنترل خود:

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

آیا چند متر وجود دارد؟

کار جالب با یک چرخه امکان پذیر است در همان زمان دو شمارنده در چرخه.
یک مثال را در نظر بگیرید:

مثال 7: با استفاده از اسکریپت، متغیر جفت های زیر را به سه خط چاپ کنید: I \u003d 0 J \u003d 2 I \u003d 1 j \u003d 3 I \u003d 2 J \u003d 4


✍ راه حل:
  • در چرخه، سازماندهی دو متر: ضد من برای دنباله 0 1 2 ، متر جی برای خروجی توالی 2 3 4 :
  • 1 2 3 برای (i \u003d 0، j \u003d 2؛ من< 10 , j< 5 ; i++, j++ ) { }

    برای (i \u003d 0، j \u003d 2؛ من<10, j<5; i++, j++) { }

    هر یک از سه پارامتر از چرخه در حال حاضر دارای دو مقدار است که ذکر شده است. از طریق کاما (به عنوان مثال، پارامتر اول با دو مقادیر: I \u003d 0، j \u003d 2). پارامترهای خود ذکر شده اند از طریق کاما(;).

  • برای خروجی از هر خط، از برچسب استفاده کنید
    :
  • 1 2 3 4 برای (i \u003d 0، j \u003d 2؛ من< 10 , j< 5 ; i++, j++ ) { document.write ("
    i \u003d "، من،" j \u003d "، j)؛)

    برای (i \u003d 0، j \u003d 2؛ من<10, j<5; i++, j++) { document.write("
    i \u003d "، من،" j \u003d "، j)؛)

صفحه نسل "در پرواز": چطور است؟

قبل از انجام کار زیر، یک مثال را در نظر بگیرید. صفحه Dynamic Building HTML با جاوا اسکریپت.

مثال 8:

  • شما باید به صورت پویا لیست های مشخص شده و شماره گذاری شده در صفحه وب را بسته به داده های وارد شده توسط کاربر ایجاد کنید: درخواست از کاربر برای وارد شدن نمایش لیست (شماره 1) یا مشخص شده (رقم 2)) و سپس تعداد موارد لیست.
  • بسته به پاسخ، برچسب های صفحه نمایش یا لیست مشخص شده یا شماره گذاری شده با تعداد مورد نیاز مورد نیاز است.
  • اگر یک نوع غیر موجود لیست وارد شده باشد، سپس یک پیام صادر کنید "نوع صحیح را وارد کنید!" و خروج از یک برنامه ().

به یاد بیاورید برچسب ها:
برچسب های لیست اعداد:

<oL\u003e <لی\u003e <لی\u003e <لی\u003e </ OL\u003e

برچسب های مشخص شده برچسب ها:

var listType \u003d prompt ("وارد" 1 "- اگر لیست مشخص شده،" 2 "- اگر لیست شماره")؛

  • مقدار وارد شده را بررسی کنید: برای یک لیست شماره (رقم 1) برچسب را نمایش دهید
      ، برای برچسب (رقم 2) - برچسب
        . اگر مقدار دیگری وارد شود، خروجی را بیاندازید و برنامه را تمام کنید:

            ") دیگر (هشدار (" نوع صحیح را وارد کنید)؛ خروج؛)

          • متغیر را شروع کنید کولوو مقدار وارد شده توسط کاربر در پنجره مودال:
          • var kolvo \u003d prompt ("تعداد موارد را وارد کنید")؛

          • برای تبدیل مقدار رشته به عددی از تابع Parseint استفاده کنید:
          • برای (var i \u003d 1؛ i<=kolvo; i++) document.write("");

          • از آنجا که لیست ها با برچسب های مناسب بسته می شوند، بسته به لیست لیست، خروجی برچسب های بسته بندی:
          • اگر (listtype \u003d\u003d "1") document.write ("") دیگر اگر (listtype \u003d\u003d" 2 ") document.write ("" ) ;

            اگر (listtype \u003d\u003d "1") document.write ("

        ") دیگر اگر (listtype \u003d\u003d" 2 ") document.write ("
      ");

    1. اسکریپت تست در مرورگر.
    2. JS 3_11 وظیفه.
      یک اسکریپت را بنویسید که برچسب ها را نمایش می دهد ورودی(کنترل) انواع مختلف، بسته به ارقام وارد شده:

      1 - زمینه متن,
      2 - دکمه,
      3 - رادیو(تعویض).

      تعداد تگ های مشتق شده نیز باید درخواست شود.

      به یاد بیاورید برچسب ها:

      برای 1 - زمینه متن: برای 2 دکمه: برای 3 - رادیو:

      یک مثال از خروجی:

      JS 3_12 وظیفه. قرعه کشی یک صفحه شطرنج 9x9 با استفاده از جاوا اسکریپت برای چرخه. هیئت مدیره "قرعه کشی" به دنبال تگ های HTML برای یک جدول است:

      به یاد بیاورید برچسب ها:

      <مرز جدول \u003d "1" عرض \u003d "30٪"\u003e <tr\u003e <tD\u003e-</ td\u003e -</ td\u003e </ tr\u003e </ جدول\u003e

      --

      • برای طراحی 9 خط، لازم است یک چرخه خارجی را با یک متر مربع سازماندهی کنید.
      • برای قرعه کشی 9 سلول در هر خط، لازم است که یک چرخه داخلی (جاسازی شده) را با یک جغرافیایی سازماندهی کنیم.
      • برای رسم سلول ها و رشته ها، از روش document.write استفاده کنید.

      نتیجه:

      علاوه بر این:

      1. در سلول های جدول، جدول ضرب را با استفاده از شمارنده های چرخه (I و J) نمایش دهید.
      2. ردیف اول و ستون اول برای برداشت با پس زمینه قرمز (ویژگی سلول های جدول bgcolor):
        <tD bgcolor \u003d "قرمز"\u003e-</ td\u003e

        -

      نتیجه:


      سوالات برای کنترل خود:

      1. توضیح دهید که مفهوم "ساختمان صفحه پویا" چیست؟
      2. چه طراحی زبان اغلب هنگام ساخت یک صفحه استفاده می شود؟

      جاوا اسکریپت Cyclic - در حالی که اپراتورهای زبان

      نحو اپراتور WHELE:

      در حالی که (شرایط) (/ / / operators..block ..)؛

      مثال: دفع کادر محاوره ای 1000 (2، 4، 8 ... 512). از روش هشدار استفاده کنید


      ✍ راه حل:
      • فهرست اسکریپت:
      • 1 2 3 4 5 var a \u003d 1؛ در حالی که (A.< 1000 ) { a*= 2 ; alert(a) ; }

        var a \u003d 1؛ در حالی که (A.< 1000){ a*=2; alert(a); }

        a * \u003d 2 → عملیات تخصیص کامپوزیت مورد استفاده قرار می گیرد: یک محصول همراه با تخصیص، I.E. همانند a \u003d a * 2

      • نتیجه را در مرورگر تست کنید.

      چگونه می توان شکست و ادامه اپراتورها در چرخه در حال کار کار می کنند؟

      مثال:

      var a \u003d 1؛ در حالی که (A.< 1000 ) { a*= 2 ; if (a== 64 ) continue ; if (a== 256 ) break ; alert(a) ; }

      var a \u003d 1؛ در حالی که (A.< 1000){ a*=2; if (a==64) continue; if (a==256) break; alert(a); }

      درجه کاهش می یابد خروجی به 128 شامل و ارزش 64 از دست رفته است کسانی که. در جعبه های گفتگو، ما خواهیم دید: 2 4 8 16 32 128

      JS 3_13 وظیفه. چه مقادیر قطعه کد زیر چیست؟

      var counter \u003d 5؛ در حالی که (شمارنده< 10) { counter++; document.write("Counter " + counter); break; document.write("Эта строка не выполнится."); }


      JS 3_14 وظیفه. کد ساختمانی را بنویسید h. در درجه yبا استفاده از چرخه در حالی که درخواست مقادیر متغیرها و خروجی نتیجه با استفاده از هشدار ().

      کد کامل:

      1 2 3 4 5 6 7 8 9 var x \u003d ...؛ var y \u003d ...؛ counter \u003d 1؛ chislo \u003d x؛ در حالی که (...) (chislo \u003d x * ...؛ counter \u003d ...؛) هشدار (Chislo)؛

      var x \u003d ...؛ var y \u003d ...؛ counter \u003d 1؛ chislo \u003d x؛ در حالی که (...) (chislo \u003d x * ...؛ counter \u003d ...؛) هشدار (Chislo)؛

      خطای درست در برنامه طراحی شده برای پیدا کردن تعداد شماره:

      1 2 3 4 5 6 7 8 9 10 11 12 13 var counter \u003d prompt ("شماره را وارد کنید")؛ ver فاکتوریل \u003d 1؛ document.write ( "اعداد فاکتوریل:" + شمارنده + "! \u003d")؛ انجام (اگر (counter \u003d\u003d 0) (فاکتوریل \u003d 1؛ شکستن؛) فاکتوریل \u003d فاکتوریل / شمارنده؛ counter \u003d counter + 1؛) در حالی که (counter\u003e 0)؛ document.write (فاکتوریل)؛

      var counter \u003d prompt ("شماره را وارد کنید")؛ ver فاکتوریل \u003d 1؛ document.write ("اعداد فاکتوریل:" + counter + "! \u003d")؛ انجام (اگر (counter \u003d\u003d 0) (فاکتوریل \u003d 1؛ شکستن؛) فاکتوریل \u003d فاکتوریل / شمارنده؛ counter \u003d counter + 1؛) در حالی که (counter\u003e 0)؛ document.write (فاکتوریل)؛


      JS 3_16 وظیفه. تغییر برنامه در مورد ورود به نام کاربری:

      درخواست نام کاربر را تا زمانی که کاربر واقعا وارد نام (I.E.، فیلد واقعا پر شود و کلید لغو را نمی توان فشار داد). هنگامی که نام وارد می شود، سپس خروجی "سلام، نام!". سند

      چگونه برای جستجوی خطاهای جاوا اسکریپت؟

      در برخی موارد، کد در صفحه به دلیل دلایل غیر قابل درک نیست. کجا به دنبال یک اشتباه هستید؟ در چنین مواردی، می توانید بیانیه Satch را امتحان کنید.

      اپراتور Try..Catch در حال تلاش برای انجام یک قطعه کد است و اگر یک خطا در کد وجود داشته باشد، ممکن است یک خطا در صفحه نمایش داده شود.
      خطا در شیء E.Message ذخیره می شود.

      کار اپراتور را با استفاده از مثال در نظر بگیرید:

      مثال: یک اپراتور خطا را در برنامه بنویسید. وجود یک خطا در کد اشتباه فرض شده را بررسی کنید: اگر خطا در کد وجود داشته باشد - یک پیام را صادر کنید "پردازش خطا: نام خطا". پس از بررسی اپراتور اشتباه، صرف نظر از اینکه آیا خطا در کد وجود دارد، یک پیام را صادر کنید "اتمام اقدامات"


      ✍ راه حل:
      • به عنوان یک پیام با یک خطا، ما از روش prompt () استفاده می کنیم، با یک خطا نوشته شده است - promt (). پیام خطا در واحد امتحان قرار می گیرد:
      • هشدار ("به")؛ سعی کنید (Promt ("شماره را وارد کنید")؛ // اپراتور با یک خطا)

        سعی کنید با انگلیسی - "تلاش"، بنابراین، ما اپراتور امتحان را در مقابل قطعه کد قرار می دهیم، که شاید، شاید یک خطا باشد (در مورد ما، واقعا یک اشتباه وجود دارد).

      • یک پیام اخطار خطا باید در بلوک گرفتن قرار گیرد:
      • 6 7 8 9 گرفتن (e) (هشدار ( "پردازش خطا:"+ e.message)؛ )

        گرفتن (e) (هشدار ("پردازش خطا:" + e.Message)؛)

        اگر خطا واقعا وجود داشته باشد، سپس بیانیه گرفتن (از انگلیسی. گرفتن ") این خطا را در شیء الکترونیکی ذخیره می کند. در آینده، می توان آن را در کادر محاوره ای E.Message نمایش داد.

      • پیام نهایی که باید خروجی باشد، صرف نظر از این که آیا خطا در کد است، آن را در بلوک در نهایت قرار دهید:
      • سرانجام (هشدار ("اقدامات نهایی")؛) هشدار ("بعد از")؛

        اگر هنوز یک خطا وجود دارد، سپس مترجم پس از خروجی آن در مثال ما به اجرای بلوک گرفتن، و سپس در نهایت (از "تکمیل انگلیسی"، "در نهایت")، که همیشه تکمیل خواهد شد، صرف نظر از آیا خطا یا نه حتی اگر یک خطا در بلوک گرفتن رخ دهد.

      مهم: در نهایت بلوک در طراحی اختیاری است.


      JS 3_17 وظیفه. یک مثال را که در بالا توضیح داده شده با تغییرات زیر انجام دهید:

    3. حذف بلوک در نهایت و اجرای کد را دنبال کنید.
    4. به جای یک اپراتور اشتباه بی نظیر قرار دهید و ببینید چه نتیجه ای خواهد بود.
    5. خلاصه:

      درس توصیف اپراتورها و طرح های زبان جاوا اسکریپت زیر را شرح داد:

      اپراتورهای شرطی جاوا اسکریپت:

    6. اگر اپراتور
    7. تخصیص مشروط (اپراتور سه تایی)
    8. سوئیچ سوئیچ اپراتور
    9. اپراتورهای چرخه:

    10. چرخه برای
    11. در حالی که چرخه
    12. چرخه ... در حالی که
    13. چرخه برای ... در
    14. وظیفه نهایی JS 3_18.
      یک بازی برای دو بازی ایجاد کنید:

      1. این برنامه درخواست اولین بازیکن را برای وارد کردن یک شماره از 1 قبل از 100 (بازیکن دوم شماره وارد شده را نمی بیند). بازیکن دوم پس از آن می خواهد شماره وارد شده را حدس بزند. یک پیام در پاسخ نمایش داده می شود. "تعداد کمی" یا "خیلی" بسته به پاسخ وارد شده. اگر یک بازیکن حدس بزند، تبریک می گوید نمایش داده می شود. اگر حدس بزنید - بازی همچنان ادامه دارد (تا زمانی که شماره حدس زده شود).
      2. محاسبه تعداد تلاش ها و نتیجه را هنگامی که شماره حل می شود، محاسبه کنید.


      سوالات برای کنترل خود:

      1. در کدام موارد توصیه می شود که از چرخه استفاده کنید؟ نام نمونه ای از استفاده از آن را نام ببرید.
      2. هدف از بیانیه Satch چیست؟
      3. تخصیص هر بلوک اپراتور try.catch را توضیح دهید.

      در این مقاله، اپراتورهای جاوا اسکریپت مشروط و منطقی را در نظر بگیرید.

      اظهارات شرطی جاوا اسکریپت

      اپراتورهای مشروط - اینها اپراتورهای زبان جاوا اسکریپت (ECMASTRT) هستند که بسته به برخی از شرایط، به شما اجازه می دهد یک یا چند دستورالعمل خاص را انجام دهید.

      اشکال اپراتورهای شرطی در جاوا اسکریپت:

      • شرطی اگر اپراتور (با یک شاخه)؛
      • اپراتور مشروط اگر ... دیگر (با دو شاخه)؛
      • اپراتور مشروط اگر ... (با چند شاخه)؛
      • اپراتور Terner (؟ :)؛
      • سوئیچ انتخاب اپراتور

      اپراتور مشروط اگر

      اگر نحو اپراتور:

      اگر (شرایط) آموزش

      بیانیه شرطی شرطی شامل موارد زیر است:

      • کلمه کلیدی اگر؛
      • شرایط (عبارات در پرانتز)، که باید درست یا غلط باشد (یا به یکی از این ارزش ها داده شود)؛
      • دستورالعمل هایی که نیاز به انجام دارنداگر شرایط درست باشد یا به آن داده شود.

      مثلا:

      اگر (درست) تعداد \u003d 4؛

      در این مثال، ارزش درست است. این بدان معنی است که COUNT \u003d 4 دستورالعمل همیشه انجام خواهد شد. این مثال به سادگی برای توضیح اصل عملیات اپراتور IF توضیح داده شده است، زیرا او از هر معنی محروم است

      به عنوان مثال، ما ارزش رای را به 1 افزایش می دهیم، اگر آن (نوع آن) یک عدد باشد:

      اگر (Typeof رای \u003d\u003d\u003d "شماره") رای ++؛

      اگر شما نیاز به انجام چندین دستورالعمل دارید، باید آنها را در براکت های فرفری قرار دهید:

      اگر (Typeof رای \u003d\u003d\u003d "شماره") (رای ++؛ Console.Log ("تعداد آرا:" + رای)؛)

      اگر (Typeof رای \u003d\u003d\u003d "شماره") (رای ++؛)

      اگر اپراتور دیگر

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

      نحو:

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

      به عنوان مثال، پیامی را در مورد اینکه آیا تعداد حتی یا نه:

      اگر (شماره٪ 2) (console.log ("تعداد عجیب و غریب!")؛) دیگر (Console.Log ("شماره چه!")؛)

      حاکمیت وضعیت به درست یا غلط

      اگر بیان در شرایط بیانیه IF برابر با درست یا غلط نیست، جاوا اسکریپت آن را به یکی از این مقادیر هدایت می کند. این عمل را با استفاده از "قانون دروغ" به اصطلاح انجام می دهد.

      معنای این قانون: هر عبارت درست است، به جز مقادیر زیر.:

      • دروغ (دروغ)؛
      • "" یا "" (رشته خالی)؛
      • نان (نوع داده های ویژه عددی "شماره")؛
      • 0 (شماره "صفر")؛
      • nULL ("خالی" ارزش)؛
      • undefined (ارزش نامشخص).

      به عنوان مثال، ما یک پیام خوش آمدید به کنسول مرورگر را از دست خواهیم داد، بسته به اینکه مقدار در متغیر متغیر ذخیره می شود:

      IFUSER) (CONSOLE.LOG ("سلام،" + نام + "!")؛ دیگر (CONSOLE.LOG ("سلام، مهمان!")؛)

      اگر متغیر نامزدی دارای یک رشته خالی باشد، پس با توجه به حاکمیت دروغ، آن را به مقدار نادرست داده می شود. در نتیجه، پیام "سلام، مهمان!" در کنسول نمایش داده خواهد شد .

      و اگر، به عنوان مثال، متغیر نامزدی شامل رشته Timur، بیان بر روی وضعیت به مقدار واقعی داده می شود. به عنوان یک نتیجه، پیام "سلام، تیمور!" در کنسول ظاهر می شود .

      دیگر اگر اپراتور ... (شرایط متعددی)

      نحو:

      اگر (conditure1) (دستورالعمل 1) else اگر (conditure2) (دستورالعمل 2) دیگر اگر (condition3) (دستورالعمل 3 // ...) else else (condition n) else (دستورالعمل هایی که اعدام خواهد شد اگر هیچ یک از شرایط اجرا شود برابر نیست یا به این مقدار داده نمی شود)

      اپراتور مشروط (ternary) (؟ :)

      اپراتور ترنر - اپراتور جاوا اسکریپت که می تواند مورد استفاده قرار گیرد زمانی که لازم است برای انجام یکی از دو عبارات داده شده بسته به شرایط.

      نحو:

      وضعیت؟ بیان 1: بیان 2

      آیا اپراتور سه گانه شامل سه اپراتور است که توسط نمادها جدا می شوند؟ و: وضعیت اپراتور Terchnary در اولین اپراتور تنظیم شده است. همچنین می تواند در براکت ها نتیجه گیری شود. اگر شرایط درست باشد یا به این مقدار داده شود، بیان انجام خواهد شد 1، در غیر این صورت - بیان 2.

      مثلا:

      (شماره\u003e 10)؟ console.log ("شماره بیش از 10!"): console.log ("شماره کمتر یا برابر 10")؛

      در جاوا اسکریپت، اپراتورهای متعدد سه تایی مجاز هستند (؟ :):

      var daynumber \u003d تاریخ جدید () getday ()؛ روز \u003d (Daynumber \u003d\u003d\u003d 0)؟ "یکشنبه": (DayNumber \u003d\u003d\u003d 1)؟ دوشنبه: (DayNumber \u003d\u003d\u003d 2)؟ سه شنبه: (DayNumber \u003d\u003d\u003d 3)؟ "چهارشنبه": (DayNumber \u003d\u003d\u003d 4)؟ "پنجشنبه": (DayNumber \u003d\u003d\u003d 5)؟ "جمعه": (DayNumber \u003d\u003d\u003d 6)؟ شنبه: "روز ناشناخته هفته"؛ console.log ("امروز" + day.tolowecase () + ".")؛

      مثال بالا، اما با استفاده از ضبط چندگانه اپراتور اگر ... دیگر:

      var daynumber \u003d تاریخ جدید () getday ()؛ اگر (DayNumber \u003d\u003d\u003d 0) (روز \u003d "یکشنبه"؛) دیگری اگر (DayNumber \u003d\u003d\u003d 1) (روز \u003d "دوشنبه"؛) دیگر اگر (DayNumber \u003d\u003d\u003d 2) (روز \u003d "سه شنبه"؛) دیگر اگر (DayNumber \u003d\u003d\u003d 3) (روز \u003d "محیط زیست"؛) دیگر اگر (DayNumber \u003d\u003d\u003d 4) (روز \u003d "پنج شنبه"؛) دیگر اگر (DayNumber \u003d\u003d\u003d 5) (روز \u003d "جمعه"؛ ) دیگر اگر (DayNumber \u003d\u003d\u003d 6) (روز \u003d "شنبه"؛) دیگر (روز \u003d "روز ناشناخته هفته"؛) Console.Log ("امروز" + day.tolowce () + ".")؛

      اپراتور سوئیچ

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

      سوئیچ اپراتور Syntax:

      سوئیچ (بیان) (case value1: // ... دستورالعمل هایی که اجرا می شود اگر نتیجه محاسبه بیان "value1" شکستن باشد؛ // دستورالعمل اختیاری (اگر استفاده نمی شود، سپس سوئیچ اپراتور فرمان زیر) مورد value2: // ... دستورالعمل هایی که اجرا می شود اگر نتیجه محاسبه بیان "value2" شکستن باشد؛ // دستورالعمل اختیاری (اگر استفاده نشده باشد، پس از آن دستور زیر از اپراتور سوئیچ اجرا می شود) / / ... مقدار مورد n: // //. .. دستورالعمل هایی که اگر نتیجه محاسبه بیان "ارزش" "ارزش" باشد، اجرا می شود؛ // دستورالعمل اختیاری (اگر از آن استفاده نشده باشد، پس از دستور زیر از اپراتور سوئیچ ) پیش فرض: // دستورالعمل هایی که در صورتی که نتیجه بیان برابر نیست، برابر نیست، نه از ارزش ها)

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

      دستورالعمل شکستن اختیاری است. این طراحی شده است تا اعدام اپراتور سوئیچ را قطع کند و راهنمای کاربر را پس از آن انتقال دهد.

      به عنوان مثال، ما پیامی را به کنسول مرورگر بر تعداد آب نبات به ارمغان می آوریم:

      var countcandyboys \u003d 1، countcandygirls \u003d 2، پیام؛ سوئیچ (Countcandyboys + countcandygirs) (مورد 1: پیام \u003d "یک آب نبات"؛ شکستن؛ Case 2: Case 3: message \u003d "دو یا سه نبات"؛ شکستن؛ مورد 4: پیام \u003d "چهار نبات"؛ شکستن؛ پیش فرض: پیام \u003d "نه تنها، نه دو، نه سه، نه چهار و نه چهار آب نبات"؛) // پیام را به کنسول Console.log (پیام) برداشت؛

      در مثال بالا، بیان محاسبه شده است. بنابراین، پیام \u003d "دو یا سه آب نبات" و شکستن انجام خواهد شد. دستورالعمل شکستن اجرای بیشتری از بیانیه سوئیچ را قطع می کند و مدیریت دستورالعمل را پس از آن انتقال می دهد، I.E. console.log (پیام). او پیام را به کنسول می برد "دو یا سه آب نبات".

      به عنوان مثال، ما روز جاری هفته را به کنسول می رسانیم:

      var day \u003d ""؛ سوئیچ (تاریخ جدید (). GetDay ()) (مورد 0: روز \u003d "یکشنبه"؛ شکستن؛ CASE 1: Day \u003d "دوشنبه"؛ شکستن؛ مورد 2: روز \u003d "سه شنبه"؛ CASE 3: DAY \u003d DAY \u003d "چهارشنبه"؛ شکستن؛ CASE 4: DAY \u003d "پنج شنبه"؛ شکستن؛ CASE 5: DAY \u003d "جمعه"؛ شکستن؛ CASE 6: DAY \u003d "شنبه"؛ پیش فرض: روز \u003d "روز ناشناخته هفته" ؛) console.log ("امروز" + day.toloweCase () + ".")؛

      یک مثال که در آن دستورالعمل شکستن استفاده نمی شود:

      var نتیجه \u003d "موفقیت"؛ سوئیچ (نتیجه) (مورد "موفقیت": console.log ("موفقیت!")؛ مورد "invalidcaptcha": console.log ("CAPPER نامعتبر!")؛ پیش فرض: console.log ("خطا!")؛)

      در این مثال، بیان اپراتور سوئیچ موفقیت است. در نتیجه، دستورالعمل Console.Log اجرا خواهد شد ("موفقیت!")، که پیام "موفقیت" را به ارمغان می آورد! در کنسول اما از آنجایی که پس از آن هیچ دستورالعمل شکستن وجود ندارد، پس اجرای اسکریپت در نسخه زیر ادامه خواهد یافت. بنابراین، دستورالعمل ها قبل از آنکه در حالی که هنوز هم برای رفع شکستن یا پایان اپراتور سوئیچ به دست می آید، اجرا می شود. به عنوان یک نتیجه از این مثال، 3 پیام در کنسول نمایش داده می شود: "موفقیت!" . "CAPTCHA نامعتبر است!" و "خطا!" .

      در بعضی موارد ممکن است این رفتار را مورد نیاز باشد، اما نه در این. یک خطا به سادگی ساخته شده است.

      نسخه ثابت از مثال:

      var نتیجه \u003d "موفقیت"؛ سوئیچ (نتیجه) (مورد "موفقیت": console.log ("موفقیت!")؛ شکستن؛ مورد "invalidcaptcha": console.log ("capple infull!")؛ شکستن؛ پیش فرض: console.log ("خطا!" )؛)؛)

      اپراتورهای منطق

      جاوا اسکریپت اپراتورهای منطقی زیر را تشخیص می دهد:

      • && - منطقی "و"؛
      • || - منطقی "یا"؛
      • ! -Logic "نه."

      اگر مقادیر بولین در بیان منطقی operand1 && operand2 استفاده می شود، نتیجه این عبارت درست خواهد بود اگر هر یک از آنها درست باشد؛ در غیر این صورت، ارزش این عبارت ارزش نادرست خواهد بود.

      false && false // false true && false // false false && true / false true && true // true

      اگر هیچ مقادیر بولین در بیان منطقی operand1 && operand2 استفاده نشود، پس از آن نتیجه این عبارت، operand1 خواهد بود، اگر بتوان آن را به اشتباه داده می شود؛ در غیر این صورت، نتیجه این عبارت عملیاتی خواهد بود.

      5 && 0 // 0 1 && 5 // 5 "رشته" && undefined // undefined "string1" && "string2" // "string2"

      اگر در عبارت منطقی عملکردی 1 || operand2 از مقادیر بولی استفاده می شود، نتیجه این عبارت درست خواهد بود اگر حداقل یکی از آنها درست باشد؛ در غیر این صورت، ارزش این عبارت ارزش نادرست خواهد بود.

      دروغ || false // false true || false // true false || true // true true || صحیح صحیح.

      اگر در عبارت منطقی عملکردی 1 || operand2 از مقادیر بولی استفاده نمی کند، نتیجه این عبارت، operand1 خواهد بود، اگر بتوان آن را به حقیقت داده می شود؛ در غیر این صورت، نتیجه این عبارت عملیاتی خواهد بود.

      5 || 0 // 5 1 || 5 // 1 "رشته" || undefined // "رشته" "string1" || "String2" // "String1"

      نتیجه یک عبارت منطقی! operand1 درست خواهد بود اگر operand1 نادرست باشد یا می تواند به این مقدار داده شود؛ در غیر این صورت، نتیجه این عبارت ارزش نادرست خواهد بود.

      false // true! true // false! "ردیف" // false! 5 // false "