Permalänk

Problem Javascript

Tja! Jag håller på och skriver ett program som ska kunna säga vilket år som en skådespelare har vunnit Academy Awards och för vilken film.

Problemet är att jag inte riktigt vet hur jag ska skriva ut koden. Ska jag använda mig av en for loop och sedan console.log? Man kanske bör göra om koden till en stor array istället för att det är massa variablar. Men skulle det gå att göra en for loop här?

Här är en JSfiddle länk för koden: https://jsfiddle.net/xnL5s6tv/

Trådstart återställd
Permalänk

Jag hade troligtvis sparat datan som ett json object och gjort en sökfunktion för att hitta rätt årtal.

Visa signatur

Intel core i5 6600k, Sapphire Radeon R9 380 Nitro 4GB, 16GB RAM
MacBook Pro 13 tum 2017 i7 16GB RAM 512GB SSD

Permalänk

@perlennartsson: Hej! Tack för svar!
Har inte hört talas om json object förut. Hur skulle det hela gå till?

Permalänk
Visa signatur

Intel core i5 6600k, Sapphire Radeon R9 380 Nitro 4GB, 16GB RAM
MacBook Pro 13 tum 2017 i7 16GB RAM 512GB SSD

Permalänk

@perlennartsson: Aha! Okej. Och HTML filen behöver ändras ser jag också, jag måste definiera knapp, alltså rutan där man ska klicka. Jag måste lägga in det i min javascript del eller hur? Men jag har ingen aning om vart man ska lägga in den.

Och en fråga, skulle man kunna göra en utskrift av all kod genom HTML tabben också?

Edit: Och varför används just 2014 som utskrift i console.log? Måste man manuellt lägga in vilket år man vill ha i console.log?

Permalänk
Medlem
Skrivet av gustavius:

@perlennartsson: Aha! Okej. Och HTML filen behöver ändras ser jag också, jag måste definiera knapp, alltså rutan där man ska klicka. Jag måste lägga in det i min javascript del eller hur? Men jag har ingen aning om vart man ska lägga in den.

Och en fråga, skulle man kunna göra en utskrift av all kod genom HTML tabben också?

Edit: Och varför används just 2014 som utskrift i console.log? Måste man manuellt lägga in vilket år man vill ha i console.log?

Har du jobbat med JavaScript ö.h.t. innan? Eller är detta någon läxa/uppgift som du ska göra?
Står liksom i koden som @perlennartsson gav dig

console.log(search(2014));

Visa signatur

NZXT H510 Flow MSI B450 Tomahawk MAX
AMD Ryzen 5800X3D RX 7900XTX Kingston Fury 64GB

Permalänk
Medlem

@gustavius: Json är dataformat i läsbar textform för objekt. Att göra som du först gjort med separata variabler per årtal är inte vägen att gå, just för att du inte får data som är sökbart. Jag skulle rekommendera att du har en separat textfil som datakälla där du lägger in dina Json-objekt (ex. oscars.json). På så vis slipper du ändra i din källkod när du gör ändringar i datat (kanske lägger till fler årtal). I ditt JavaScript kan du referera till filen för att komma åt Json-objektet.

Att 2014 använts i exemplet är förmodligen för att det är just ett exempel och att du själv kan lista ut hur du går vidare.

Permalänk

@gustavius: https://jsfiddle.net/perlennartsson/zbwctq0p/7/ där är med html och allt
edit: troligtvis behöver man trycka på run för det ska funka

Visa signatur

Intel core i5 6600k, Sapphire Radeon R9 380 Nitro 4GB, 16GB RAM
MacBook Pro 13 tum 2017 i7 16GB RAM 512GB SSD

Permalänk

@Sebbepojken: Är det inte onödigt komplicerat att använda en extern json fil om man inte har så bra koll på js med tanke på att det krävs ajax för att ladda in filen?

Visa signatur

Intel core i5 6600k, Sapphire Radeon R9 380 Nitro 4GB, 16GB RAM
MacBook Pro 13 tum 2017 i7 16GB RAM 512GB SSD

Permalänk
99:e percentilen

Om du har ett antal objekt av samma typ/klass som utgör en lista, använd då en liststruktur (Array i JS) för att lagra dem istället för att ha x antal fristående variabler som du aldrig kommer kunna hantera.

Visa signatur

Skrivet med hjälp av Better SweClockers

Permalänk
Medlem
Skrivet av perlennartsson:

@Sebbepojken: Är det inte onödigt komplicerat att använda en extern json fil om man inte har så bra koll på js med tanke på att det krävs ajax för att ladda in filen?

JSON är per definition ett dataformat och inte någon sorts objekt. Antar att du menade javascript-objekt i din tidigare post. Det är inte samma sak, vilket är rätt viktigt att förstå

Visa signatur

Kom-pa-TI-bilitet

Permalänk
Medlem

Var god återställ första inlägget. Denna tråd går inte att förstå alls utan det.

Visa signatur

Main: 9900k @ 5.0GHz | 16GB @ 3400MHz CL15 | RTX 2080 @ 2100/16200MHz 12378 Time Spy
HTPC: R5 3600 @ 4.2 | 16GB @ 3600MHz CL18 | GTX 1080 @ 2088/11006MHz 8039 Time Spy

Permalänk

Tack för svar! Löste problemet själv, men det går definitivt att göra på många sätt

Permalänk
Hedersmedlem

@gustavius *Trådstart återställd*

Att redigera bort trådstarten är respektlöst mot övriga tråddeltagarna och gör att andra personer inte kan dra nytta av tråden i framtiden. Ifall du har hittat en egen lösning är du givetvis välkommen att uppdatera tråden med lösningen på problemet.
/moderator

Visa signatur

Danskjävel så krattar som en skrivare...