» »

JavaScript

JavaScript

zbrisan ::

/*jshint multistr:true */
text = "asdf Aandreysdf Andrey asdf Andrey";
var myName = "Andrey";
var hits= [];

for (var i = 0; i<text.length; i++){
    if (text.substring(i,i+myName.length) === myName){
        for (var j=i; j<(myName.length+i); j++){
            hits.push(text[j]);}
            }
        }
        
    if (hits.length === 0){
    console.log("Your name wasn't found!");
    }
    else{
    console.log(hits);
        }

Mi lahko nekdo razlozi delovanje tega programa vrstico za vrstico? Od for-a naprej me najbolj zanima.

repson ::

/*jshint multistr:true */
text = "asdf Aandreysdf Andrey asdf Andrey";
var myName = "Andrey";
var hits= [];

/*tale for zanka je namenjena sprehajanju čez tekst znak po znak*/
for (var i = 0; i<text.length; i++){
   /*tale if je namenjen iskanju myName v text*/
   /*preveri, če se substring teksta od i do i+6 (dolžina imena) ujema z imenom */
    if (text.substring(i,i+myName.length) === myName){
        /*začni na mestu najdbe zadetka (j=i) in shrani (push) vsak znak posebej v hits (for)*/
         for (var j=i; j<(myName.length+i); j++){
            hits.push(text[j]);}
            }
        }
    /* če ni zadetkov printaj */
    if (hits.length === 0){
    console.log("Your name wasn't found!");
    }
    /* sicer pa printaj array hits */
    else{
    console.log(hits);
        }

Zgodovina sprememb…

  • spremenilo: repson ()

kogledom ::

prvi for se ti izvede za vsako črko text-a.
prvi if preveri če je od trenutne črke naprej iskano ime (z substring-om izreže relevanten del text-a in ga primerja z iskanim imenom)
drugi for ti nato shrani vse črke imena v hits.

tukaj se strinjam, da ni najbolj razumljivo kaj hoče s tem. Jaz bi npr raje naredil na začetku namesto
var hits = [];
naredil
var hits = {};
nato pa v zanki namesto
hits.push(text[j]);
naredil
hits[j] = text[j];

drugi del z if-else je pa pomojo dovolj razumljiv.

tukaj imaš jsbin

zbrisan ::

tnx za tole.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Avtorji želijo obiti založnike

Oddelek: Novice / Ostale najave
388422 (7395) driver_x
»

Kako pokukati v življenje naključnega uporabnika spleta - ChatRoulette

Oddelek: Novice / Zasebnost
256710 (4780) MrStein
»

Fiksni IP pri SiOLu

Oddelek: Omrežja in internet
112104 (1827) Klemzz
»

Katero linux distribucijo za newbija

Oddelek: Operacijski sistemi
91114 (903) Gh0st
»

Katero DDR plato sedaj v SLO :

Oddelek: Kaj kupiti
61016 (934) AntiC

Več podobnih tem