Skip to content

Commit 9126695

Browse files
committed
all projects
1 parent 9c2106e commit 9126695

1 file changed

Lines changed: 208 additions & 0 deletions

File tree

07_projects/projectsset1.md

Lines changed: 208 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,212 @@ buttons.forEach(function (button){
3434
});
3535
});
3636

37+
```
38+
39+
## project 2 solution
40+
41+
```javascript
42+
const form = document.querySelector('form');
43+
// this usecase will give you empty
44+
// const height = parseInt(document.querySelector('#height').value)
45+
46+
form.addEventListener('submit', function (e) {
47+
e.preventDefault();
48+
49+
const height = parseInt(document.querySelector('#height').value);
50+
const weight = parseInt(document.querySelector('#weight').value);
51+
const results = document.querySelector('#results');
52+
53+
if (height === '' || height < 0 || isNaN(height)) {
54+
results.innerHTML = `Please give a valid height ${height}`;
55+
} else if (weight === '' || weight < 0 || isNaN(weight)) {
56+
results.innerHTML = `Please give a valid weight ${weight}`;
57+
} else {
58+
const bmi = (weight / ((height * height) / 10000)).toFixed(2);
59+
//show the result
60+
results.innerHTML = `<span>${bmi}</span>`;
61+
}
62+
});
63+
64+
65+
```
66+
67+
## project 3 solution code
68+
69+
```javascript
70+
const clock = document.getElementById('clock');
71+
// const clock = document.querySelector('#clock')
72+
73+
setInterval(function () {
74+
let date = new Date();
75+
// console.log(date.toLocaleTimeString());
76+
clock.innerHTML = date.toLocaleTimeString();
77+
}, 1000);
78+
79+
80+
```
81+
82+
## project 4 solution
83+
84+
85+
```javascript
86+
87+
let randomNumber = parseInt(Math.random() * 100 + 1);
88+
89+
const submit = document.querySelector('#subt');
90+
const userInput = document.querySelector('#guessField');
91+
const guessSlot = document.querySelector('.guesses');
92+
const remaining = document.querySelector('.lastResult');
93+
const lowOrHi = document.querySelector('.lowOrHi');
94+
const startOver = document.querySelector('.resultParas');
95+
96+
const p = document.createElement('p');
97+
98+
let prevGuess = [];
99+
let numGuess = 1;
100+
101+
let playGame = true;
102+
103+
if (playGame) {
104+
submit.addEventListener('click', function (e) {
105+
e.preventDefault();
106+
const guess = parseInt(userInput.value);
107+
console.log(guess);
108+
validateGuess(guess);
109+
});
110+
}
111+
112+
function validateGuess(guess) {
113+
if (isNaN(guess)) {
114+
alert('PLease enter a valid number');
115+
} else if (guess < 1) {
116+
alert('PLease enter a number more than 1');
117+
} else if (guess > 100) {
118+
alert('PLease enter a number less than 100');
119+
} else {
120+
prevGuess.push(guess);
121+
if (numGuess === 11) {
122+
displayGuess(guess);
123+
displayMessage(`Game Over. Random number was ${randomNumber}`);
124+
endGame();
125+
} else {
126+
displayGuess(guess);
127+
checkGuess(guess);
128+
}
129+
}
130+
}
131+
132+
function checkGuess(guess) {
133+
if (guess === randomNumber) {
134+
displayMessage(`You guessed it right`);
135+
endGame();
136+
} else if (guess < randomNumber) {
137+
displayMessage(`Number is TOOO low`);
138+
} else if (guess > randomNumber) {
139+
displayMessage(`Number is TOOO High`);
140+
}
141+
}
142+
143+
function displayGuess(guess) {
144+
userInput.value = '';
145+
guessSlot.innerHTML += `${guess}, `;
146+
numGuess++;
147+
remaining.innerHTML = `${11 - numGuess} `;
148+
}
149+
150+
function displayMessage(message) {
151+
lowOrHi.innerHTML = `<h2>${message}</h2>`;
152+
}
153+
154+
function endGame() {
155+
userInput.value = '';
156+
userInput.setAttribute('disabled', '');
157+
p.classList.add('button');
158+
p.innerHTML = `<h2 id="newGame">Start new Game</h2>`;
159+
startOver.appendChild(p);
160+
playGame = false;
161+
newGame();
162+
}
163+
164+
function newGame() {
165+
const newGameButton = document.querySelector('#newGame');
166+
newGameButton.addEventListener('click', function (e) {
167+
randomNumber = parseInt(Math.random() * 100 + 1);
168+
prevGuess = [];
169+
numGuess = 1;
170+
guessSlot.innerHTML = '';
171+
remaining.innerHTML = `${11 - numGuess} `;
172+
userInput.removeAttribute('disabled');
173+
startOver.removeChild(p);
174+
175+
playGame = true;
176+
});
177+
}
178+
179+
180+
```
181+
182+
183+
# Project 5 solution
184+
185+
```javascript
186+
const insert = document.getElementById('insert');
187+
188+
window.addEventListener('keydown', (e) => {
189+
insert.innerHTML = `
190+
<div class='color'>
191+
<table>
192+
<tr>
193+
<th>Key</th>
194+
<th>Keycode</th>
195+
<th>Code</th>
196+
</tr>
197+
<tr>
198+
<td>${e.key === ' ' ? 'Space' : e.key}</td>
199+
<td>${e.keyCode}</td>
200+
<td>${e.code}</td>
201+
</tr>
202+
203+
</table>
204+
</div>
205+
`;
206+
});
207+
208+
209+
```
210+
211+
# Project 6 Solution
212+
213+
```javascript
214+
//generate a random color
215+
216+
const randomColor = function () {
217+
const hex = '0123456789ABCDEF';
218+
let color = '#';
219+
for (let i = 0; i < 6; i++) {
220+
color += hex[Math.floor(Math.random() * 16)];
221+
}
222+
return color;
223+
};
224+
225+
let intervalId;
226+
const startChangingColor = function () {
227+
if (!intervalId) {
228+
intervalId = setInterval(changeBgColor, 1000);
229+
}
230+
231+
function changeBgColor() {
232+
document.body.style.backgroundColor = randomColor();
233+
}
234+
};
235+
const stopChangingColor = function () {
236+
clearInterval(intervalId);
237+
intervalId = null;
238+
};
239+
240+
document.querySelector('#start').addEventListener('click', startChangingColor);
241+
242+
document.querySelector('#stop').addEventListener('click', stopChangingColor);
243+
244+
37245
```

0 commit comments

Comments
 (0)