You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/sl/2-js-basics/2-functions-methods/assignment.md

80 lines
4.5 KiB

<!--
CO_OP_TRANSLATOR_METADATA:
{
"original_hash": "8328f58f4593b4671656ff8f4b2edbd9",
"translation_date": "2025-10-25T00:18:56+00:00",
"source_file": "2-js-basics/2-functions-methods/assignment.md",
"language_code": "sl"
}
-->
# Zabava s funkcijami
## Navodila
V tej nalogi boste vadili ustvarjanje različnih vrst funkcij, da utrdite koncept, ki ste se ga naučili o JavaScript funkcijah, parametrih, privzetih vrednostih in povratnih izjavah.
Ustvarite JavaScript datoteko z imenom `functions-practice.js` in implementirajte naslednje funkcije:
### 1. del: Osnovne funkcije
1. **Ustvarite funkcijo z imenom `sayHello`**, ki ne sprejema nobenih parametrov in preprosto zapiše "Hello!" v konzolo.
2. **Ustvarite funkcijo z imenom `introduceYourself`**, ki sprejme parameter `name` in zapiše sporočilo, kot je "Hi, my name is [name]" v konzolo.
### 2. del: Funkcije s privzetimi parametri
3. **Ustvarite funkcijo z imenom `greetPerson`**, ki sprejme dva parametra: `name` (obvezen) in `greeting` (neobvezen, privzeto "Hello"). Funkcija naj zapiše sporočilo, kot je "[greeting], [name]!" v konzolo.
### 3. del: Funkcije, ki vračajo vrednosti
4. **Ustvarite funkcijo z imenom `addNumbers`**, ki sprejme dva parametra (`num1` in `num2`) in vrne njuno vsoto.
5. **Ustvarite funkcijo z imenom `createFullName`**, ki sprejme parametra `firstName` in `lastName` ter vrne polno ime kot enoten niz.
### 4. del: Vse skupaj združite
6. **Ustvarite funkcijo z imenom `calculateTip`**, ki sprejme dva parametra: `billAmount` (obvezen) in `tipPercentage` (neobvezen, privzeto 15). Funkcija naj izračuna in vrne znesek napitnine.
### 5. del: Testirajte svoje funkcije
Dodajte klice funkcij za testiranje vsake od vaših funkcij in prikažite rezultate z uporabo `console.log()`.
**Primer testnih klicev:**
```javascript
// Test your functions here
sayHello();
introduceYourself("Sarah");
greetPerson("Alex");
greetPerson("Maria", "Hi");
const sum = addNumbers(5, 3);
console.log(`The sum is: ${sum}`);
const fullName = createFullName("John", "Doe");
console.log(`Full name: ${fullName}`);
const tip = calculateTip(50);
console.log(`Tip for $50 bill: $${tip}`);
```
## Merila ocenjevanja
| Merilo | Odlično | Zadostno | Potrebno izboljšanje |
| ------ | -------- | -------- | -------------------- |
| **Ustvarjanje funkcij** | Vse 6 funkcij je pravilno implementiranih s pravilno sintakso in poimenovanjem | 4-5 funkcij je pravilno implementiranih z manjšimi sintaktičnimi napakami | 3 ali manj funkcij je implementiranih ali večje sintaktične napake |
| **Parametri in privzete vrednosti** | Pravilno uporablja obvezne parametre, neobvezne parametre in privzete vrednosti, kot je določeno | Parametri so pravilno uporabljeni, vendar so lahko težave s privzetimi vrednostmi | Napačna ali manjkajoča implementacija parametrov |
| **Povratne vrednosti** | Funkcije, ki bi morale vračati vrednosti, to pravilno storijo, funkcije, ki ne bi smele vračati vrednosti, pa izvajajo samo dejanja | Večina povratnih vrednosti je pravilnih z manjšimi težavami | Pomembne težave s povratnimi izjavami |
| **Kakovost kode** | Čista, dobro organizirana koda s smiselno poimenovanimi spremenljivkami in pravilno identacijo | Koda deluje, vendar bi lahko bila bolj čista ali bolje organizirana | Koda je težko berljiva ali slabo strukturirana |
| **Testiranje** | Vse funkcije so testirane z ustreznimi klici funkcij, rezultati pa so jasno prikazani | Večina funkcij je ustrezno testiranih | Omejeno ali napačno testiranje funkcij |
## Dodatni izzivi (neobvezno)
Če se želite še dodatno izzvati:
1. **Ustvarite različico funkcije z uporabo puščične funkcije**
2. **Ustvarite funkcijo, ki sprejme drugo funkcijo kot parameter** (kot primeri `setTimeout` iz lekcije)
3. **Dodajte preverjanje vhodnih podatkov**, da zagotovite, da vaše funkcije pravilno obravnavajo neveljavne vnose
---
> 💡 **Nasvet**: Ne pozabite odpreti razvijalske konzole v brskalniku (F12), da si ogledate izhod vaših izjav `console.log()`!
---
**Omejitev odgovornosti**:
Ta dokument je bil preveden z uporabo storitve za prevajanje z umetno inteligenco [Co-op Translator](https://github.com/Azure/co-op-translator). Čeprav si prizadevamo za natančnost, vas prosimo, da upoštevate, da lahko avtomatizirani prevodi vsebujejo napake ali netočnosti. Izvirni dokument v njegovem izvirnem jeziku je treba obravnavati kot avtoritativni vir. Za ključne informacije priporočamo profesionalni prevod s strani človeka. Ne odgovarjamo za morebitna napačna razumevanja ali napačne interpretacije, ki izhajajo iz uporabe tega prevoda.