Vinnaren i pepparkakshustävlingen!
2018-05-30, 10:31
  #1
Medlem
Ska skriva ett ord som "krypterar" till en början vill jag att alla "o" ska bli "!" fattade inte först vad som blev fel men nu förstår jag att om ett "o" är i ett ord... som bror.. så går den inte "in" i ifsatsen... alltså endas separata bokstöver funkar b r o r = b r ! r.
Så det jag behöver hjälp med är att få till så den i ett ord läser av en bokstav, hopaps ni förstår :S


Kod:
<script>

function printit() 
{ 
var text = document.getElementById("texten").value;
var kry = [];
kry = text.split(" ");

	for(var i=0; i<kry.length; i++)
	{
	if(kry[i] == "o")
		{
		kry[i] = "!";
		}
	document.getElementById("krypt").innerHTML += kry[i];
	}

}




</script>
<body>

<h3>skriv in en text:</h3>
	<form id="f1">
	<input type="text" id="texten">
	<input type="button" value="kryptera" onClick="printit()">
	
</form>
<div id="krypt"></div>
Citera
2018-05-30, 10:37
  #2
Medlem
Kaustis avatar
Varför inte bara köra en replace på bokstaven?

HTML-kod:
function printit() 
{ 
var text = document.getElementById("texten").value;
text.replace("o","!");
//alert(text)
}


Citat:
Ursprungligen postat av mssoulstar
Ska skriva ett ord som "krypterar" till en början vill jag att alla "o" ska bli "!" fattade inte först vad som blev fel men nu förstår jag att om ett "o" är i ett ord... som bror.. så går den inte "in" i ifsatsen... alltså endas separata bokstöver funkar b r o r = b r ! r.
Så det jag behöver hjälp med är att få till så den i ett ord läser av en bokstav, hopaps ni förstår :S


Kod:
<script>

function printit() 
{ 
--var text = document.getElementById("texten").value;
var kry = [];
kry = text.split(" ");

	for(var i=0; i<kry.length; i++)
	{
	if(kry[i] == "o")
		{
		kry[i] = "!";
		}
	document.getElementById("krypt").innerHTML += kry[i];
	}

}




</script>
<body>

<h3>skriv in en text:</h3>
	<form id="f1">
	<input type="text" id="texten">
	<input type="button" value="kryptera" onClick="printit()">
	
</form>
<div id="krypt"></div>
Citera
2018-05-30, 10:38
  #3
Medlem
kodsnickrarns avatar
Kod:
kry = kry.replace('o', '!');

Edit: tvåa på den

/K
Citera
2018-05-30, 10:39
  #4
Medlem
Vad trodde du själv skulle hända när du använder text.split(" ")?

Googla "javascript read string character by character" eller något så hittar du svaret.
Citera
2018-05-30, 12:23
  #5
Moderator
Neksnors avatar
split("") ska tydligen funka. https://www.w3schools.com/jsref/jsref_split.asp
Citera
2018-05-30, 22:42
  #6
Medlem
Neksnor! tack du fick mig att se att jag hade ett mellanslag mellan mina ""... att så lite förstör en hel grej hehe
Citera
2018-05-31, 09:03
  #7
Moderator
vhes avatar
Rubrik ändrad.

Utgående rubrik: göra ett program som "krypterar" i javascript
Ny rubrik: Substitutionschiffer i javascript

/Moderator
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback