دوره مجازی جاوااسکریپت (جلسه 5): ورودی/خروجی و ساختارهای شرطی جاوااسکریپت

دسته بندی: جاوا اسکریپت
زمان مطالعه: 2 دقیقه
۲۹ اردیبهشت ۱۳۹۴

در جلسه امروز به توضیح و تدریس دو مبحث مهم پرداختیم . اول به نحوه دریافت داده های ورودی از کاربر و سپس به آموزش نحوه نمایش خروجی ها به کاربر اشاره کردیم و سپس به تشریح ساختارهای شرطی در زبان جاوااسکریپت می پردازیم و در نهایت مثال های عملی و یک مینی پروژه جالب رو با هم خواهیم نوشت.

مطالب مطرح شده در این جلسه عبارتند از :

  • اهمیت بحث ورودی/خروجی در زبان های برنامه نویسی
  • معرفی توابع دریافت ورودی از کاربر در زبان جاوااسکریپت
  • معرفی توابع confirm, prompt و ویژگی innerHtml و value
  • معرفی توابع نمایش خروجی در زبان جاوااسکریپت و نحوه استفاده از آنها
  • معرفی توابع alert , document.write , console.log و ویژگی innerHtml و value
  • معرفی ساختارهای شرطی در زبان جاوااسکریپت
  • دلایل و اهداف استفاده از ساختار های شرطی در زبان های برنامه نویسی
  • ساختار شرطی if و نحوه استفاده از آن
  • ساختار شرطی if..else و نحوه استفاده از آن
  • ساختار شرطی if..else if و نحوه استفاده از آن
  • ساختار شرطی : ? و نحوه استفاده از آن
  • ساختار شرطی switch و نحوه استفاده از آن
  • ذکر مثال هایی برای استفاده از ساختار های شرطی
  • مینی پروژه : اسکریپت نمایش پیام وقت بخیر بر اساس اوقات روز
:: توجه

این مطلب یک جلسه از آموزش javascript می باشد و برای مشاهده آن باید در دوره ثبت نام کنید.

ثبت نام در آموزش javascript

نویسنده
بیش از 15 سال هست که برنامه نویسی می کنم و از بین همه زبون هایی که کار کردم جاوا، اسمبلی و php رو دوست دارم. دانشجوی دکترای نرم افزارم و توی دانشگاه روی پردازش بیگ دیتا و پردازش موازی کار کردم و عاشق چالش از هر نوعیش هستم! سون لرن مثل بچه منه که 12 سال براش وقت گذاشتم، اینجا همه تلاش می کنیم از شروع یادگیری تا ورود به بازر کار حوزه برنامه نویسی و IT همراهتون باشیم.

جلسات دوره

نظرات کاربران

hashem

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

amirfff

سلام
استاد آوند توی تمرین اولی که دادید که گفتید 2عدد از کاربر دریافت و حاصل ضرب و جمع و تفرق آن 2 عدد را نمایش دهید ,,توی ضرب و تفریق کردن مشکلی نیست ولی توی جمع کردن مشکلی که وجود داره اینه که بااعداد به صورت رشته عمل می کند وآن هارا به هم می چسباند ,راه حل این مشکل چی هست؟؟؟؟

لقمان آوند

باید ورودی ها رو به عدد تبدیل کنید. از کلاس Number استفاده کنید

نازمحمد گری

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

هادی مصلی نژاد

سلام استاد آوند ، میخواستم بدونم پنجره confirm رو چطور میشه استایل دهی کرد و اینکه چطور میشه مقادیر پیش فرض رو تغییر داد ( مثلا به جای ok و cancel مقادیر بله و خیر قرار دهیم).ممنون

لقمان آوند

سلام
خود پنجره رو نمیشه و مربوط به مرورگره. ولی می تونید پلاگین معادلش رو بنویسید یا از نمونه پلاگین های آماده این کار مثل sweetAlert استفاده کنید.

Aria Banazadeh

سلام اقای اوند این تمرین

 var usdata = data();
 var userday = usdata.getDay();
 var msg = "";
 switch(userday)
 {
  case 0:
  msg = "شنبه"
  break;
  case 1:
  msg = "یکشنبه"
  break;
  case 2:
  msg = "دوشنبه"
  break;
  case 3:
  msg = "سه شنبه"
  break;
  case 4:
  msg = "چهارشنبه"
  break;
  case 5:
  msg = "پنج شنبه"
  break;
  case 6:
  msg = "جمعه"
  break;
  if(userday = 5 || 6)
  {
   alert("تعطیلات خوبی داشته باشید")
  }
 }
 
لقمان آوند

خوبه

Aria Banazadeh

سلام استاد اینم تمرین
var p1 = window.prompt(“لطفا عدد اول را وارد نمایید”);
var p2 = window.prompt(“لطفا عدد دوم را وارد نمایید”);
window.alert(p1+p2)
window.alert(p1-p2)
window.alert(p1*p2)
window.alert(p1%p2)

لقمان آوند

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

Sahar Dida

با سلام خدمت شما
استاد اون تمرینی که واسه قسمت i/o دادین وقتی عملگر + را اعمال می کنم دو تا عدد رو رشته در نظر میگیره و کنار هم میچسبونه ولی عملیات دیگه رو حسابی محاسبه میکنه ،دلیلش چی هست؟
و در مورد miniproject اگه ساعت سیستم کاربر 24 ساعته نباشه پیام ها اشتباه میشن !!!!
و یه مشکلی که من برخوردم تابع rand من جواب نمیده !!شکل صحیح تابع را میشه بی زحمت بنویسین کدشو؟

لقمان آوند

سلام
– جواب سوال اولتون رو در جلسات آینده خواهید یافت . پاسخ دادیم .
– برای مینی پروژه مشکلی نداره. تابع getHours یه عدد بین 0 تا 23 بر می گردونه.
– تابع رندم هم درسته و مشکلی نداره. چه خطایی میده یا مشکلش چیه ؟

مجتبی

سلام این کد همش قسمت پیشفرض اجرا میشه!! مشکلش چیه

 var age = prompt("your age?");
 switch (age)  {
  case (age>=18):
   alert("+18");
   break;
  case (age<18):
   alert("-18");
   break;
  default :
   alert("No Run Correctly!");
   break;
 }
لقمان آوند

متغیر age مقدارش رو از prompt میگیره که رشته برمیگردونه. در صورتی که شما در case ها به صورت عددی استفاده می کنید .
خط اول رو این شکلی کنید :
var age = Number(prompt(“your age?”));
ضمن اینکه معمولا جلوی case ها از مقدار استفاده میشه نه شرط ! برای این کد بهتره از if ها استفاده کنید .

ابراهیم عابدی

استاد برای تمرین بنده از ساختار if و else if استفاده کردم مشکلی نداره ؟ جوابی هم که بدست اووردم هم تفاوتی نداشت با چیزی که تو جلسه بعد نشون دادید و اینکه اولویت استفاده از شرط ها با کدوم باشه وقتی امکان نوشتن با چند نوع ساختار شرطی متفاوت هست

لقمان آوند

اگر جواب صحیح گرفتید مشکلی نیست و خوبه .

ابراهیم عابدی

استاد قسمت دوم سوالم حالا چه در بحث ساختارهای شرطی چه حلقه ها اولویتی وجود نداره ؟ سلیقه ای هست ؟

تا قسمت 7 رو که دیدم عالی بوده استاد به خصوص اینکه تمرین می دادید به نظرم جا داشت تمرینای بیشتری هم می گفتید . سایتی موجود هست که تمرین های خوبی برای جاوا اسکریپت داشته باشه به همراه جواب ؟

لقمان آوند

بله تقریبا سلیقه ای هست و می تونید از هر کدوم که راحتتر جوابتون رو باهاش میگیرید استفاده کنید.
الان جایی برای تمرین نمی شناسم. عبارت javascript exercises رو گوگل کنید و بگردید.

امین خلیلی

با سلام وقتی میخایم مقدار دقیقه یا ثانیه سیستم کاربر را نشون بدیم باید هر بار کاربر صفحه را رفرش کنیم تا با ساعت سیسنم یکی بشه ایا راهی هست که بدون نیاز به رفرش خود به خود ساعت همزمان با سیستم تغییر کنه
ممنون

لقمان آوند

بله جلوتر که برید آموزشش داده شده . باید از رویداد های زمانی استفاده کنید . تا جلسه 15 به جوابتون خواهید رسید …

پایان زمان پشتیبانی

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

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

نیاز به لاگین

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