Создание функции
Начал изучать JS, подскажите как создать функцию "выбор правильного окончания", не хочется каждый раз писать в функции "для нажатия кнопки" одно и тоже 3 раза. А заодно и подскажите что неверно в коде, как можно сделать проще и лучше?
<html>
<head>
<script type="text/javascript">
var arr = ["Камень", "Ножницы", "Бумага"];//Объявление массива
var kamen = function(){//Объявление функции для нажатия кнопки камень
var rand = Math.floor( Math.random() * arr.length );//объявление переменной рандом, равной случайному значению из массива "arr"
if(arr[rand]=="Бумага")//Выбор правильного окончания выпал/а/и
var okonchanie="а";
if(arr[rand]=="Ножницы")// -//-
var okonchanie="и";
if(arr[rand]=="Камень")// -//-
var okonchanie="";
alert('У компьютера выпал' + okonchanie + " " + arr[rand]);// -//-
if(arr[rand]=="Камень")//Условие для ничьей
alert("Ничья, Камень на Камень");
if (arr[rand]=="Ножницы")//Условие для победы
alert("Вы победили, камень бъёт ножницы");
if (arr[rand]=="Бумага")//Условие для поражения
alert("Вы проиграли, бумага накрывает камень");
};
var nojnici = function(){
var rand = Math.floor( Math.random() * arr.length );
if(arr[rand]=="Бумага")
var okonchanie="а";
if(arr[rand]=="Ножницы")
var okonchanie="и";
if(arr[rand]=="Камень")
var okonchanie="";
alert('У компьютера выпал' + okonchanie + " " + arr[rand]);
if(arr[rand]=="Ножницы")
alert("Ничья, Ножницы на Ножницы");
if(arr[rand]=="Камень")
alert("Вы проиграли, Камень бьет Ножницы ");
if(arr[rand]=="Бумага")
alert("Вы выйграли, Ножницы режут Бумагу");
};
var bumaga = function(){
var rand = Math.floor( Math.random() * arr.length );
if(arr[rand]=="Бумага")
var okonchanie="а";
if(arr[rand]=="Ножницы")
var okonchanie="и";
if(arr[rand]=="Камень")
var okonchanie="";
alert('У компьютера выпал' + okonchanie + " " + arr[rand]);
if(arr[rand]=="Бумага")
alert("Ничья, Бумага на Бумагу");
if(arr[rand]=="Ножницы")
alert("Вы проиграли, Ножницы режут бумагу");
if(arr[rand]=="Камень")
alert("Вы выйграли, Бумага накрывает Камень");
};
</script>
</head>
<body>
<FORM>
<INPUT TYPE=button VALUE="Камень" onClick="kamen()";/>
<INPUT TYPE=button VALUE="Ножницы" onClick="nojnici()";/>
<INPUT TYPE=button VALUE="Бумага" onClick="bumaga()";/>
</FORM>
</body>
</html>
|
<html>
<head>
<script type="text/javascript">
//Массив Вариантов:
var arrOut=[];
//Элементы массива Вариантов:
//массив из вариантa результата + ответа компа;
//0 - Камень; 1 - Ножницы; 2 - Бумага;
arrOut[0]=[0,0,"Ничья, Камень на Камень"];
arrOut[1]=[0,1,"Вы победили, камень бьёт ножницы"];
arrOut[2]=[0,2,"Вы проиграли, бумага накрывает камень"];
arrOut[3]=[1,0,"Вы проиграли, Камень бьет Ножницы"];
arrOut[4]=[1,1,"Ничья, Ножницы на Ножницы"];
arrOut[5]=[1,2,"Вы выиграли, Ножницы режут Бумагу"];
arrOut[6]=[2,0,"Вы выиграли, Бумага накрывает Камень"];
arrOut[7]=[2,1,"Вы проиграли, Ножницы режут бумагу"];
arrOut[8]=[2,2,"Ничья, Бумага на Бумагу"];
var startFunc = function(items){
//items//То, что Выбрали по кнопке //items=0 - Камень; items=1 - Ножницы;items=2 - Бумага;
var arr0 = [0,1,2]; //Массив выбора компа:
var rand = Math.floor( Math.random() * arr0.length ); //alert(rand)
var strStart = 'У компьютера выпа' //Начало;
var arr1 = ['л: Камень','ли: Ножницы','ла: Бумага']; //Ответ компа - концовка
var str = strStart + arr1[rand]; //Итоговая строка
alert(str); //Ответ компа;
var arrNew =[items,rand]; //Массив результата событий;
//Ищем его cоответствие в возможных Вариантах перебором списка arrOut
var otwet = '';
for(var i=0;i<arrOut.length; i++) {
if(arrOut[i][0]==arrNew[0]){ //Если Первый элемент в массиве совпал с items
if(arrOut[i][1]==arrNew[1]){otwet=arrOut[i][2];break;} //Совпали оба элемента;
}
}
alert(otwet);
}
</script>
</head>
<body>
<FORM>
<INPUT TYPE=button VALUE="Камень" onClick="startFunc(0)";/>
<INPUT TYPE=button VALUE="Ножницы" onClick="startFunc(1)";/>
<INPUT TYPE=button VALUE="Бумага" onClick="startFunc(2)";/>
</FORM>
</body>
</html>
|
| Часовой пояс GMT +3, время: 14:17. |