goit-js-hw-02task-номер_завдання.js استخدم <script type="module"> لإغلاق رمز المهمة في نطاق منفصل وتجنب تعارضات أسماء المعرفات. اكتب ميزة logItems(array) التي تتلقى صفيفًا وتستخدم for ، والتي سيتم عرضها لكل عنصر من عناصر الصفيف في وحدة التحكم [номер елемента] - [значення елемента] .
يجب أن يبدأ الترقيم بـ 1 . على سبيل المثال ، بالنسبة للعنصر الأول من المصفوفة ['Mango', 'Poly', 'Ajax'] مع الفهرس 0 سيتم استنتاج '1 - Mango' ، ولفهرس 2 سيعرض '3 - Ajax' .
const logItems = function ( array ) {
// твій код
} ;
/*
* Виклич функції для перевірки працездатності твоєї реалізації.
*/
logItems ( [ "Mango" , "Poly" , "Ajax" , "Lux" , "Jay" , "Kong" ] ) ;
logItems ( [ 5 , 10 , 15 , 20 , 25 , 30 , 35 , 40 , 45 , 50 ] ) ; اكتب نصًا من تكلفة نقش المجوهرات. للقيام بذلك ، قم بإنشاء وظيفة calculateEngravingPrice(message, pricePerWord) (فقط الكلمات والفجوات) وسعر نقش كلمة واحدة ، وإرجاع نقش كل الكلمات في سطر.
const calculateEngravingPrice = function ( message , pricePerWord ) {
// твій код
} ;
/*
* Виклич функції для перевірки працездатності твоєї реалізації.
*/
console . log (
calculateEngravingPrice (
"Proin sociis natoque et magnis parturient montes mus" ,
10
)
) ; // 80
console . log (
calculateEngravingPrice (
"Proin sociis natoque et magnis parturient montes mus" ,
20
)
) ; // 160
console . log (
calculateEngravingPrice ( "Donec orci lectus aliquam est magnis" , 40 )
) ; // 240
console . log (
calculateEngravingPrice ( "Donec orci lectus aliquam est magnis" , 20 )
) ; // 120 اكتب ميزة findLongestWord(string) تقبل خطًا تعسفيًا (فقط الكلمات والفجوات في السطر) وإرجاع أطول كلمة في هذا السطر.
const findLongestWord = function ( string ) {
// твій код
} ;
/*
* Виклич функції для перевірки працездатності твоєї реалізації.
*/
console . log ( findLongestWord ( "The quick brown fox jumped over the lazy dog" ) ) ; // 'jumped'
console . log ( findLongestWord ( "Google do a roll" ) ) ; // 'Google'
console . log ( findLongestWord ( "May the force be with you" ) ) ; // 'force' اكتب ميزة formatString(string) تتطلبها وتنسيقها إذا لزم الأمر.
40 символів ، فإن الوظيفة تعيدها في النموذج الأولي.40 символів ، فإن الوظيفة تقلب الخط يصل إلى 40 حرفًا وتضيف ثلاث نقاط إلى نهاية السطر '...' ، ثم تُرجع الإصدار القصير. const formatString = function ( string ) {
// твій код
} ;
/*
* Виклич функції для перевірки працездатності твоєї реалізації.
*/
console . log ( formatString ( "Curabitur ligula sapien, tincidunt non." ) ) ;
// повернеться оригінальний рядок
console . log ( formatString ( "Vestibulum facilisis, purus nec pulvinar iaculis." ) ) ;
// повернеться форматований рядок
console . log ( formatString ( "Curabitur ligula sapien." ) ) ;
// повернеться оригінальний рядок
console . log (
formatString (
"Nunc sed turpis. Curabitur a felis in nunc fringilla tristique."
)
) ;
// повернеться форматований рядок اكتب ميزة checkForSpam(message) ، واستضافة معلمة message واحدة. تقوم الوظيفة بفحصها لمحتوى الكلمات spam sale . إذا وجدت كلمة محظورة ، فإن الوظيفة تُرجع true إذا كانت الكلمات المحظورة ليست دالة تعيد false . قد تكون الكلمات في خط في سجل تعسفي.
const checkForSpam = function ( message ) {
// твій код
} ;
/*
* Викличи функції для перевірки працездатності твоєї реалізації.
*/
console . log ( checkForSpam ( "Latest technology news" ) ) ; // false
console . log ( checkForSpam ( "JavaScript weekly newsletter" ) ) ; // false
console . log ( checkForSpam ( "Get best sale offers now!" ) ) ; // true
console . log ( checkForSpam ( "[SPAM] How to earn fast money?" ) ) ; // trueاكتب نصًا متبوعًا بالوظائف:
prompt . يتم تخزين المقدمة في متغير input ويتم إضافتها إلى أرقام numbers .Cancel في prompt .Cancel ، إذا لم يكن الصفيف فارغًا ، فمن الضروري حساب مجموع جميع عناصر الصفيف وتسجيله في متغير total . استخدم for OR OR for...of . ثم ، في وحدة التحكم ، قم بإزالة السطر 'Загальна сума чисел дорівнює [сума]' . ؟ إن التحقق من أن المستخدم قد قدم الرقم ، وليس مجموعة من الأحرف التعسفية ، غير مطلوب. إذا كنت تريد ، في حالة الإدخال غير الصحيح ، عرض alert مع النص 'Було введено не число, попробуйте ще раз' ، في حين أن نتيجة prompt غير مطلوبة في مجموعة من الأرقام ، ثم يُطلب من المستخدم مرة أخرى إدخال الرقم في prompt .
let input ;
const numbers = [ ] ;
let total = 0 ; هناك مجموعة logins مع تسجيلات تسجيلات المستخدم. اكتب البرنامج النصي إضافة تسجيل الدخول إلى صفيف logins . يجب أن يكون تسجيل الدخول المرفق:
loginsكسر المهمة على الترابط بمساعدة الوظائف.
اكتب وظيفة isLoginValid(login) التي تحقق فيها عدد أحرف معلمة login وتدويرها true أو false ، اعتمادًا على ما إذا كان طول المعلمة يقع في نطاق معين من 4 إلى 16 حرفًا.
اكتب isLoginUnique(allLogins, login) ، الذي يقبل قائمة بجميع عمليات تسجيل الدخول والتسجيلات ، والتي تتم إضافتها كمعلمات والتحقق من وجود login في allLogins massve ، false true إذا لم يتم استخدام مثل هذا تسجيل الدخول بعد أن تم استخدام تسجيل الدخول بالفعل.
اكتب ميزة addLogin(allLogins, login) :
isLoginValidaddLogin وأرجع 'Помилка! Логін повинен бути від 4 до 16 символів'addLogin تتحقق من تفرد تسجيل الدخول باستخدام وظيفة isLoginUniqueisLoginUnique يعيد false ، فإن addLogin لا يضيف تسجيل دخول إلى Massif ويعيد الخط 'Такий логін уже використовується!'true isLoginUnique ، addLogin يضيف تسجيل دخول جديد إلى logins وإرجاع السطر 'Логін успішно доданий!'؟ مبدأ مسؤولية واحدة للوظيفة - كل وظيفة تجعل شيئًا واحدًا. يتيح لك ذلك تجاوز الكود وتغيير منطق الوظيفة في مكان واحد فقط دون التأثير على عمل البرنامج ككل.
وظائف المسند تعود فقط true أو false . تتم استدعاء هذه الوظائف من is isLoginUnique و isLoginValid في حالتنا.
isLoginUnique فقط ما إذا كان هناك مثل هذا تسجيل الدخول في صفيف ويعيد true أو false .isLoginValid فقط ما إذا كان تسجيل الدخول الصحيح ويعيد true أو false .addLogin أو عدم إضافتها إلى تسجيل الدخول. في هذه الحالة ، تستخدم شروط الإضافة نتائج مكالمات الوظائف الأخرى - isLoginUnique و isLoginValid . const logins = [ "Mango" , "robotGoogles" , "Poly" , "Aj4x1sBozz" , "qwerty123" ] ;
const isLoginValid = function ( login ) {
// твій код
} ;
const isLoginUnique = function ( allLogins , login ) {
// твій код
} ;
const addLogin = function ( allLogins , login ) {
// твій код
} ;
/*
* Виклич функції для перевірки працездатності твоєї реалізації.
*/
console . log ( addLogin ( logins , "Ajax" ) ) ; // 'Логін успішно доданий!'
console . log ( addLogin ( logins , "robotGoogles" ) ) ; // 'Такий логін вже використовується!'
console . log ( addLogin ( logins , "Zod" ) ) ; // 'Помилка! Логін повинен бути від 4 до 16 символів'
console . log ( addLogin ( logins , "jqueryisextremelyfast" ) ) ; // 'Помилка! Логін повинен бути від 4 до 16 символів'