<!doctype html>
<html lang="pl-PL">
<head>
<meta charset="utf-8">
<title>
Zadanie 2 nie działa
</title>
<style>
input[type=button]{
text-align:center;
border-bottom-color:black;
}
body{
background-color:orange;
}
</style>
</head>
<body>
<form>
<p> Proste działania </p>
<input type="number" id="number_a" placeholder="Podaj wartość A">
<br>
<input type="number" id="number_b" placeholder="Podaj wartość B">
<br>
<input type="button" value=" + " onClick="dzialanie('+')">
<input type="button" value=" - " onclick="dzialanie('-')">
<input type="button" value=" * " onclick="dzialanie('*')">
<input type="button" value=" / " onclick="dzialanie('/')">
<input type="button" value=" ^ " onclick="dzialanie('**')">
<br>
<br>
<div id="wynik"> </div>
<br>
<input type='reset' value="Reset">
</form>
<script type='text/javascript'>
function dzialanie(znak){
var a=document.getElementById("number_a").value*1;
var b=document.getElementById("number_b").value*1;
// Jak przekonwertować tekst na operator arytmetyczny ?
var dzialanie = znak;
var wynik = a dzialanie b;
document.getElementById("wynik").innerHTML="Wynik to: "+ wynik;
}
</script>
</body>
</html>
Czy istnieje jakaś opcja, żeby zmienić pobraną wartość "znak" na operator arytmetyczny aby funkcja mogła szybko policzyć wynik? Oraz jak by się dało w jaki sposób zapisać takie działania?
Do tej pory zapisywałem prosto:
var wynik = a dzialanie b;
ale no nie idzie. Wyskakuje błąd: Uncaught SyntaxError: Unexpected identifier w w/w linijce. Na początku użyłem od razu " a znak b" jednak nie działało, dlatego postanowiłem stworzyć nową zmienną, która jak widzę nić nie daję.
Żeby uprzedzić pytania, mam już wersję z różnymi funkcjami czy też wersję z funkcją, która sprawdza zawartość zmiennej i wykonuję się dane obliczenie.
Również dodam, że jestem na poziomie szkolnym w pisaniu skryptów, dopiero się uczę więc z góry przepraszam za jakieś rażące błędy w pisaniu kodu.
Jednak chciałbym zrobić takie rozwiązanie j/w. Jakieś pomysły?