download.bg
 Вход Списание  Новини  Програми  Статии  Форум  Чат   Абонамент  Топ95   Архив 

За JavaScript

Автор
Съобщение
nik2009
Пон, 30.12.13, 22:04
Здравейте, изучавам JavaScript и имам следната задача - Създайте цикъл for, който да изписва даден запис 10 пъти, но посредата да изписва различно съобщение.
Аз измислих така -
<script lanquage="JavasSript">
var txt1=prompt("Enter 1 text: ", "");
var txt2=prompt("Enter 2 text: ", "");
for (i=1; i<=10; i+=1) {
if (i==4)
document.write(txt2+"<br />");
document.write(" "+txt1+"<br />");

}
</script>
Обаче до новото съобщение в средата си излиза и старото, а целта е на средата да е само различното /второто/ съобщение. Малко помощ?

phrozencrew
Вто, 31.12.13, 10:19
Имаш много варианти да направиш такъв цикъл. Ето 3 примерни варианта.
<script lanquage="JavasSript">
var txt1=prompt("Enter 1 text: ", "");
var txt2=prompt("Enter 2 text: ", "");
var counter = 10;
 
for (i=1; i<=counter; i++) {
	if (i==counter/2){
		document.write(txt2+"<br />");
		continue;
	}
	document.write(" "+txt1+"<br />");
}
 
document.write("<hr />");
 
for (i=1; i<=counter; i++) {
	if (i==counter/2){
		document.write(txt2+"<br />");
	} else
	document.write(" "+txt1+"<br />");
}
 
document.write("<hr />");
 
for (i=1; i<=counter; i++) {
	document.write(i==counter/2 ? txt2+"<br />" : txt1+"<br />");
}
</script> 

Demo: for.js.html

В първия случай използвам оператора continue, който казва на интерпретатора да продължи цикъла от следващият елемент.
В третият случай използвам късата форма на if-then-else.

nik2009
Вто, 31.12.13, 10:32

RE: За JavaScript

” Имаш много варианти да направиш такъв цикъл. Ето 3 примерни варианта.
<script lanquage="JavasSript">
var txt1=prompt("Enter 1 text: ", "");
var txt2=prompt("Enter 2 text: ", "");
var counter = 10;
 
for (i=1; i<=counter; i++) {
	if (i==counter/2){
		document.write(txt2+"<br />");
		continue;
	}
	document.write(" "+txt1+"<br />");
}
 
document.write("<hr />");
 
for (i=1; i<=counter; i++) {
	if (i==counter/2){
		document.write(txt2+"<br />");
	} else
	document.write(" "+txt1+"<br />");
}
 
document.write("<hr />");
 
for (i=1; i<=counter; i++) {
	document.write(i==counter/2 ? txt2+"<br />" : txt1+"<br />");
}
</script> 

Demo: for.js.html

В първия случай използвам оператора continue, който казва на интерпретатора да продължи цикъла от следващият елемент.
В третият случай използвам късата форма на if-then-else. „

Благодаря! А това условие - if (i==counter/2) грешка ли е ако се изпише така - if (i==5)
phrozencrew
Вто, 31.12.13, 10:53

RE: RE: За JavaScript

” Благодаря! А това условие - if (i==counter/2) грешка ли е ако се изпише така - if (i==5) „
Не, не е грешка. Но се старай да пишеш код, който после да можеш да използваш отново.

Коментар

за нас | за разработчици | за реклама | станете автори | in english  © 1998-2024   Experta Ltd.