سلام دوست عزیز😃👋

به آزمون ورودی کارآموزی تابستانه Front-End کداستار خوش آمدید!

مسابقه به مدت ۵ ساعت ادامه خواهد داشت و در مجموع شامل ۷ سوال است که سطح آن‌ها از آسان به سخت متفاوت خواهد بود. برای حل سوالات باید به HTML، CSS و JavaScript مسلط باشید به طوری که ۴ سوال اول مربوط به HTML و CSS هستند و ۳ سوال آخر مربوط به JavaScript می‌باشند. برای حل سوالات JavaScript نیازی به تسلط بر روی Frameworkهایی مانند React و Angular نیست و صرفا دانش JavaScript پایه کافی می‌باشد.

سوالات به گونه‌ای تنظیم شده‌اند که با توجه به دانشی که دارید بتوانید بخشی از نمرۀ سوال را بگیرید. به عنوان مثال اگر نتوانید سوال ۳ را به طور کامل حل کنید، این امکان وجود دارد که بتوانید بخشی از سوال ۴ را حل کنید؛ بنابراین حتما به تمام سوالات مراجعه کنید.

رتبه‌بندی بر اساس مجموع امتیازاتی که از سوالات کسب می‌کنید صورت می‌گیرد؛ همچنین در صورتی که امتیاز دو نفر یکسان شود، کسی که سوالات را در مدت‌زمان کمتری حل کرده باشد، رتبۀ بهتری کسب می‌کند.

در صورتی که درمورد سوالی ابهام داشتید، می‌توانید از قسمت «سوال بپرسید» آن را مطرح کنید.

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

موفق باشید 😉✌

Keyboard Tester


JavaScript

  • DOM Manipulation
  • Event Handling
  • String Manipulation

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

این نکته را در نظر بگیرید که کیبوردهای Mockstar، در حال حاضر از کلید‌های Windows و Fn و Context پشتیبانی نمی‌کنند؛ بنابراین نیازی نیست که پمبه برای تست این کلید‌ها کدی بنویسد.

توضیحات سوال🔗

تصویر خروجی نمونه

خروجی نمونه

می‌توانید برای بررسی دقیق‌تر نتیجۀ نهایی، این فیلم را مشاهده کنید.

پروژه اولیه🔗

پروژه اولیه را از این لینک دانلود کنید.

ساختار فایل‌ها
initial-project-06.zip
├── dynamic.js
├── index.html
└── static.css
Plain text
راه‌اندازی پروژه
  • ابتدا پروژۀ اولیه را دانلود و از حالت فشرده خارج کنید.
  • سپس فایل index.html را در مرورگر خود باز کنید.

خواسته‌های مسئله🔗

  • تا زمانی که کاربر کلیدی را نگه‌داشته است (keydown)، المان متناظر با آن کلید باید کلاس key--held را داشته باشد
  • پس از اینکه کاربر کلیدی را رها کرد (keyup)، المان متناظر با آن کلید باید کلاس key--selected را داشته باشد

نکات🔗

  • شما تنها مجاز به تغییر در فایل dynamic.js هستید. تغییرات در باقی فایل‌ها نادیده گرفته می‌شود.
  • توجه کنید که داوری خودکار بر مبنای ساختار فایل index.html انجام می‌شود.
  • برای ثبت پاسخ، پروژه را با ساختار زیر ارسال کنید.
[your-zip-file-name].zip
└── dynamic.js
Plain text
ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.