+
+
+
+
+
\ No newline at end of file
diff --git a/javascript2/week1/short-word/short-word.js b/javascript2/week1/short-word/short-word.js
new file mode 100644
index 00000000..0bb59f97
--- /dev/null
+++ b/javascript2/week1/short-word/short-word.js
@@ -0,0 +1,26 @@
+document.addEventListener('DOMContentLoaded', (event)=>{
+ // i made the function very generic by using arguments parameter to loop
+ //through all the strings passed to the shortWord function, you can pass in any number of strings into it.
+ //dont rely on reduce here .if you have multiple strings of the shortest length, it will only return the first shortest string found
+
+ // i have printed out the ø in the console and also on the webpage
+ const danishWords = ['bil', 'plante', 'kaffe', 'bog', 'ø', 'planetarium'];
+ function shortWord(danishWords){
+ let shortestWord = arguments[4];
+ for(var i = 1; i < arguments.length; i++){
+ if(arguments[i].length < shortestWord.length){
+ shortestWord = arguments[i];
+
+ }
+ }
+ return shortestWord;
+ }
+
+ let output = shortWord('bil', 'plante', 'kaffe', 'bog', 'ø', 'planetarium')
+ console.log(output)
+ let wordOutput = document.getElementById('word-output')
+ wordOutput.innerHTML = output;
+
+
+
+})
\ No newline at end of file
diff --git a/javascript2/week1/spirit-animal/main.css b/javascript2/week1/spirit-animal/main.css
new file mode 100644
index 00000000..e69de29b
diff --git a/javascript2/week1/spirit-animal/main.html b/javascript2/week1/spirit-animal/main.html
new file mode 100644
index 00000000..a4680b1c
--- /dev/null
+++ b/javascript2/week1/spirit-animal/main.html
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+ Codestin Search App
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
When do you want your Spirit Animal?
+
+
+
+
+
+
\ No newline at end of file
diff --git a/javascript2/week1/spirit-animal/main.js b/javascript2/week1/spirit-animal/main.js
new file mode 100644
index 00000000..edffb4a8
--- /dev/null
+++ b/javascript2/week1/spirit-animal/main.js
@@ -0,0 +1,80 @@
+document.addEventListener('DOMContentLoaded', (event)=>{
+
+ //create an array representing a spirit animal
+const spiritAnimals = ["Leviathan", "Pink Panter", "Black Swan", "Cheesy Goat", "Hummingbird", "Alkonost", "Sirin", "Meduza Gorgona", "Pegasus", "Lobster"];
+
+//get random animal from spiritAnimals array
+const randomSpiritAnimal = function () {
+ const bigDecimal = Math.random();
+ const improvedNum = (bigDecimal * 10);
+ const randomAnimal = Math.floor(improvedNum);
+ return spiritAnimals[randomAnimal];
+}
+
+//setting variables
+const firstBtn = document.querySelector("#myBtn")
+let userSpiritAnimal = document.querySelector("#print_animal");
+
+//function to assign a spirit animal
+function giveSpiritAnimal() {
+ const userNameValue = document.getElementById("userName").value; //get the name the user wrote in the input field.
+ if (userNameValue != "") {
+ userSpiritAnimal.innerHTML = userNameValue + " – " + randomSpiritAnimal();
+ document.querySelector(".forUserName").appendChild(userSpiritAnimal);
+ } else {
+ alert("Please enter your name");
+ }
+}
+//create functionality where a user can press a button and then get a new spirit animal.
+//(creating 2 buttons for yes and no)
+function showNewBtns() {
+ const userNameValue = document.getElementById("userName").value;
+ const newYesButton = document.querySelector("#yesBtn");
+ const newNoButton = document.querySelector("#noBtn"); //button to get a new spirit animal.
+ if (userNameValue != "") {
+ newYesButton.className = "showMe";
+ newNoButton.className = "showMe";
+ firstBtn.className = "noShow"; //first button disappears
+ newNoButton.addEventListener("click", giveSpiritAnimal);
+ newYesButton.addEventListener("click", function () {
+ alert("It's a match!");
+ });
+ }
+}
+
+firstBtn.addEventListener("click", giveSpiritAnimal);
+firstBtn.addEventListener("click", showNewBtns);
+
+let noBtn = document.getElementById("noBtn");
+let yesBtn = document.querySelector("#yesBtn");
+
+
+//optional: possibility to select when the spirit animal should be created
+function timingChange() {
+ const selector = document.querySelector("#selectWhenShowAnimal").value;
+ if (selector == "text") {
+ inputFunction();
+ } else if (selector == "input") {
+ keyDownFunction();
+ } else {
+ firstBtn.addEventListener("click", giveSpiritAnimal);
+ noBtn.addEventListener("click", giveSpiritAnimal);
+ }
+}
+
+function inputFunction() {
+ const selector = document.querySelector("#selectWhenShowAnimal").value;
+ if (selector == "text") {
+ noBtn.removeEventListener("click", giveSpiritAnimal);
+ document.querySelector("#userName").onchange = giveSpiritAnimal(); //when text is written
+ }
+}
+
+function keyDownFunction() {
+ const selector = document.querySelector("#selectWhenShowAnimal").value;
+ if (selector == "input") {
+ noBtn.removeEventListener("click", giveSpiritAnimal);
+ document.querySelector("#userName").onchange = giveSpiritAnimal();
+ }
+}
+})
\ No newline at end of file
From d2478df698f7d83b1944211a87fbefa4070fe4aa Mon Sep 17 00:00:00 2001
From: obaidullah3965 <33298720+obaidullah3965@users.noreply.github.com>
Date: Sun, 29 Mar 2020 20:48:41 +0200
Subject: [PATCH 02/10] mistakes
---
javascript2/week1/hyf-bay/main.js | 53 +--------
javascript2/week1/spirit-animal/main.html | 25 ++---
javascript2/week1/spirit-animal/main.js | 129 +++++++++-------------
3 files changed, 62 insertions(+), 145 deletions(-)
diff --git a/javascript2/week1/hyf-bay/main.js b/javascript2/week1/hyf-bay/main.js
index 75ce4b5a..9c6abe1b 100644
--- a/javascript2/week1/hyf-bay/main.js
+++ b/javascript2/week1/hyf-bay/main.js
@@ -1,6 +1,6 @@
document.addEventListener('DOMContentLoaded', (event)=>{
- // *****************************************************
+
// 1. Add products to DOM
let availableProducts = getAvailableProducts();
@@ -41,54 +41,3 @@ function addProducts() {
addProducts();
-// 2. Price analytics
-const productsPricesArr = availableProducts.map(product => product.price);
-console.log(productsPricesArr); //array of prices
-
-function messageFromServer(message) {
- console.log(message);
-}
-
-sendPricesToServer(productsPricesArr, messageFromServer); //console log server responce
-
-// 3.Filter using countries
-let country = document.querySelector(".country select");
-let getCountryValue = function () {
- return country.value;
-}
-
-const productSection = document.querySelector(".products");
-const lis = productSection.getElementsByTagName("li");
-const lisArr = Array.from(lis);
-
-country.addEventListener("change", () => {
- const choosenCountry = getCountryValue();
- lisArr.forEach((li) => {
- let cntry = li.lastElementChild.textContent; //!!!
- if (cntry.includes(choosenCountry)) {
- li.style.display = "";
- } else {
- li.style.display = "none";
- }
- });
-});
-
-//4. Filter using search
-const searchField = document.querySelector(".search input");
-let searchFieldValue = function () {
- let searchValue = searchField.value.toLowerCase();
- return searchValue;
-}
-
-searchField.addEventListener("keyup", () => {
- let searchFilter = searchFieldValue();
- lisArr.forEach((li) => {
- let nowProduct = li.children[1].textContent.toLowerCase();
- if (nowProduct.indexOf(searchFilter) != -1) {
- li.style.display = "";
- } else {
- li.style.display = "none";
- }
- });
- });
-})
\ No newline at end of file
diff --git a/javascript2/week1/spirit-animal/main.html b/javascript2/week1/spirit-animal/main.html
index a4680b1c..3c410a52 100644
--- a/javascript2/week1/spirit-animal/main.html
+++ b/javascript2/week1/spirit-animal/main.html
@@ -11,24 +11,13 @@
-
-
-
-
-
-
-
-
-
-
-
-
When do you want your Spirit Animal?
-
-
+
+
+
+
diff --git a/javascript2/week1/spirit-animal/main.js b/javascript2/week1/spirit-animal/main.js
index edffb4a8..cf8cecb8 100644
--- a/javascript2/week1/spirit-animal/main.js
+++ b/javascript2/week1/spirit-animal/main.js
@@ -1,80 +1,59 @@
document.addEventListener('DOMContentLoaded', (event)=>{
- //create an array representing a spirit animal
-const spiritAnimals = ["Leviathan", "Pink Panter", "Black Swan", "Cheesy Goat", "Hummingbird", "Alkonost", "Sirin", "Meduza Gorgona", "Pegasus", "Lobster"];
+ //create an for spirit animals
+ const spirit_animals = ["dog", "cat", "lion", "tiger", "cow", "rabbit", "horse" ];
+
+ let printValue = document.getElementById('print_value');
+ printValue.addEventListener('click', ()=>{
+ let input_value = document.getElementById('input_value').value;
+
+ spirit_animals.push(input_value);
+
+ let output = '';
+
+ for(i = 0; i < spirit_animals.length; i++){
+ output = output + spirit_animals[i]
+ }
+
+ document.getElementById('pText').innerHTML = output
+ })
+
+
+ const inputTag = document.getElementById('input');
+ const btnTag = document.getElementById('get-spiritual-name');
+ const pTag = document.getElementById('spiritual-name');
+ const selectOption = document.getElementById('select-option');
+
+ const spiritAnimal = ['The crying butterfly', 'The fullmoon wolf', 'The fearless tiger', 'The forest rabit', 'The yelling monkey', 'The strong deer', 'The talking snake', 'The beautiful cow', 'The dancing bear', 'The happy duck'];
+ function onClick() {
+ const name = getName(inputTag);
+ const animal = getRandomName(spiritAnimal);
+ pTag.textContent = `${name} - ${animal}`;
+ }
+
+ function onClickHandler() {
+ if (selectOption.value !== 'click-btn')
+ return;
+ if (!getName(inputTag)) {
+ pTag.textContent = 'First enter your name';
+ }
+ else onClick();
+ }
+ btnTag.addEventListener('click', onClickHandler);
+
+ function onSelectOptionKeyUp() {
+ if (selectOption.value !== 'text-written')
+ return;
+ else onClick();
+ }
+ inputTag.addEventListener('keyup', onSelectOptionKeyUp);
+
+ function onMouseover() {
+ if (selectOption.value !== 'hover-input')
+ return;
+ else onClick();
+ }
+ inputTag.addEventListener('mouseover', onMouseover);
-//get random animal from spiritAnimals array
-const randomSpiritAnimal = function () {
- const bigDecimal = Math.random();
- const improvedNum = (bigDecimal * 10);
- const randomAnimal = Math.floor(improvedNum);
- return spiritAnimals[randomAnimal];
-}
-//setting variables
-const firstBtn = document.querySelector("#myBtn")
-let userSpiritAnimal = document.querySelector("#print_animal");
-
-//function to assign a spirit animal
-function giveSpiritAnimal() {
- const userNameValue = document.getElementById("userName").value; //get the name the user wrote in the input field.
- if (userNameValue != "") {
- userSpiritAnimal.innerHTML = userNameValue + " – " + randomSpiritAnimal();
- document.querySelector(".forUserName").appendChild(userSpiritAnimal);
- } else {
- alert("Please enter your name");
- }
-}
-//create functionality where a user can press a button and then get a new spirit animal.
-//(creating 2 buttons for yes and no)
-function showNewBtns() {
- const userNameValue = document.getElementById("userName").value;
- const newYesButton = document.querySelector("#yesBtn");
- const newNoButton = document.querySelector("#noBtn"); //button to get a new spirit animal.
- if (userNameValue != "") {
- newYesButton.className = "showMe";
- newNoButton.className = "showMe";
- firstBtn.className = "noShow"; //first button disappears
- newNoButton.addEventListener("click", giveSpiritAnimal);
- newYesButton.addEventListener("click", function () {
- alert("It's a match!");
- });
- }
-}
-
-firstBtn.addEventListener("click", giveSpiritAnimal);
-firstBtn.addEventListener("click", showNewBtns);
-
-let noBtn = document.getElementById("noBtn");
-let yesBtn = document.querySelector("#yesBtn");
-
-
-//optional: possibility to select when the spirit animal should be created
-function timingChange() {
- const selector = document.querySelector("#selectWhenShowAnimal").value;
- if (selector == "text") {
- inputFunction();
- } else if (selector == "input") {
- keyDownFunction();
- } else {
- firstBtn.addEventListener("click", giveSpiritAnimal);
- noBtn.addEventListener("click", giveSpiritAnimal);
- }
-}
-
-function inputFunction() {
- const selector = document.querySelector("#selectWhenShowAnimal").value;
- if (selector == "text") {
- noBtn.removeEventListener("click", giveSpiritAnimal);
- document.querySelector("#userName").onchange = giveSpiritAnimal(); //when text is written
- }
-}
-
-function keyDownFunction() {
- const selector = document.querySelector("#selectWhenShowAnimal").value;
- if (selector == "input") {
- noBtn.removeEventListener("click", giveSpiritAnimal);
- document.querySelector("#userName").onchange = giveSpiritAnimal();
- }
-}
})
\ No newline at end of file
From fef732ffb230ee851a4b93bd9af86cb650a6c183 Mon Sep 17 00:00:00 2001
From: obaidullah3965 <33298720+obaidullah3965@users.noreply.github.com>
Date: Sun, 29 Mar 2020 21:45:56 +0200
Subject: [PATCH 03/10] double numbers in the array is finished
---
javascript2/week2/double-number/index.html | 13 +++++++
javascript2/week2/double-number/index.js | 41 ++++++++++++++++++++++
2 files changed, 54 insertions(+)
create mode 100644 javascript2/week2/double-number/index.html
create mode 100644 javascript2/week2/double-number/index.js
diff --git a/javascript2/week2/double-number/index.html b/javascript2/week2/double-number/index.html
new file mode 100644
index 00000000..601bb1f3
--- /dev/null
+++ b/javascript2/week2/double-number/index.html
@@ -0,0 +1,13 @@
+
+
+
+
+
+ Codestin Search App
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/javascript2/week2/double-number/index.js b/javascript2/week2/double-number/index.js
new file mode 100644
index 00000000..8e8a081b
--- /dev/null
+++ b/javascript2/week2/double-number/index.js
@@ -0,0 +1,41 @@
+document.addEventListener('DOMContentLoaded', (event)=>{
+
+
+ // let numbers = [1, 2, 3, 4];
+ // let newNumbers = [];
+
+ // for(let i = 0; i < numbers.length; i++) {
+ // if(numbers[i] % 2 !== 0) {
+ // newNumbers[i] = numbers[i] * 2;
+ // }
+ // }
+
+ // console.log("The doubled numbers are", newNumbers); // [2, 6]
+
+
+
+ //we dont need to loop anymore, for adding numbers manually into an array
+ //instead of a simple we shoud let the map do the work, this can be easily done by map.
+ let numbers = [1, 2, 3, 4];
+ let newNumbers = []
+ newNumbers = numbers.map(number =>{
+ return number * 2
+ })
+ console.log("The doubled numbers are in map", newNumbers);
+
+
+ //
+ let filterNumbers =[1, 2, 3, 4]
+ let filterNewNumbers =[]
+ filterNewNumbers = filterNumbers.filter(filterNumber =>{
+ return (filterNumber % 5 !== 0);
+ }).map(filterNumber =>{
+ return filterNumber * 2
+ })
+
+ console.log('the doubled number are in filter', filterNewNumbers)
+
+
+
+
+})
\ No newline at end of file
From cd5ad4dd02dc4cce600fcf1e9f967646bc05ff72 Mon Sep 17 00:00:00 2001
From: obaidullah3965 <33298720+obaidullah3965@users.noreply.github.com>
Date: Sat, 4 Apr 2020 21:07:33 +0200
Subject: [PATCH 04/10] movies array is on progress
---
javascript2/week2/movies/movies.html | 12 ++++
javascript2/week2/movies/movies.js | 83 ++++++++++++++++++++++++++++
2 files changed, 95 insertions(+)
create mode 100644 javascript2/week2/movies/movies.html
create mode 100644 javascript2/week2/movies/movies.js
diff --git a/javascript2/week2/movies/movies.html b/javascript2/week2/movies/movies.html
new file mode 100644
index 00000000..049d1f76
--- /dev/null
+++ b/javascript2/week2/movies/movies.html
@@ -0,0 +1,12 @@
+
+
+
+
+
+ Codestin Search App
+
+
+
+
+
+
\ No newline at end of file
diff --git a/javascript2/week2/movies/movies.js b/javascript2/week2/movies/movies.js
new file mode 100644
index 00000000..1725f33d
--- /dev/null
+++ b/javascript2/week2/movies/movies.js
@@ -0,0 +1,83 @@
+const movies = [{
+ "title": "'71",
+ "year": 2014,
+ "rating": 7.2,
+ "votes": 41702,
+ "running_times": 5940
+}, {
+ "title": "'A' gai wak",
+ "year": 1983,
+ "rating": 7.4,
+ "votes": 11942,
+ "running_times": 6300
+}, {
+ "title": "'Breaker' Morant",
+ "year": 1980,
+ "rating": 7.9,
+ "votes": 10702,
+ "running_times": 6420
+}, {
+ "title": "'Crocodile' Dundee II",
+ "year": 1988,
+ "rating": 5.5,
+ "votes": 47180,
+ "running_times": 6480
+}, {
+ "title": "(500) Days of Summer",
+ "year": 2009,
+ "rating": 7.7,
+ "votes": 412368,
+ "running_times": 5700
+}, {
+ "title": "*batteries not included",
+ "year": 1987,
+ "rating": 6.6,
+ "votes": 25636,
+ "running_times": 6360
+}, {
+ "title": "...E tu vivrai nel terrore! L'aldilà",
+ "year": 1981,
+ "rating": 6.9,
+ "votes": 16484,
+ "running_times": 5220
+}, {
+ "title": "...and justice for all.",
+ "year": 1979,
+ "rating": 7.4,
+ "votes": 25408,
+ "running_times": 7140
+}, {
+ "title": "10",
+ "year": 1979,
+ "rating": 6,
+ "votes": 13152,
+ "running_times": 7320
+}, {
+ "title": "10 Cloverfield Lane",
+ "year": 2016,
+ "rating": 7.2,
+ "votes": 216151,
+ "running_times": 6240
+}, {
+ "title": "10 Items or Less",
+ "year": 2006,
+ "rating": 6.7,
+ "votes": 13342,
+ "running_times": 4920
+}
+]
+
+//TO GET THE MOVIES RATING WHICH IS OVER 6 OR EQUAL TO 6
+let rating_output =[];
+for(let i = 0; i < movies.length; i++){
+ if(movies[i].rating >= 6){
+ rating_output.push(movies[i])
+ }
+}
+console.log(rating_output)
+
+
+//Count the number of movies made between 1980-1989 (including both the years)let
+// let yearsOfMovies = [];
+let yearsOfMovies = movies.filter(movie => (movie.year >= 1980 && movie.year < 1989))
+console.log(yearsOfMovies)
\ No newline at end of file
From 343bc993f5a5d7818f4ef3a7cd1aa6d90dbf4d1c Mon Sep 17 00:00:00 2001
From: obaidullah3965 <33298720+obaidullah3965@users.noreply.github.com>
Date: Fri, 10 Apr 2020 11:07:13 +0200
Subject: [PATCH 05/10] my js week3 homework is progress
---
.../week3/homework/button_click/button.js | 11 +++++++++
.../week3/homework/button_click/index.html | 14 +++++++++++
javascript2/week3/homework/delay/delay.html | 12 ++++++++++
javascript2/week3/homework/delay/delay.js | 24 +++++++++++++++++++
javascript2/week3/homework/work1/index.html | 16 +++++++++++++
javascript2/week3/homework/work1/index.js | 11 +++++++++
6 files changed, 88 insertions(+)
create mode 100644 javascript2/week3/homework/button_click/button.js
create mode 100644 javascript2/week3/homework/button_click/index.html
create mode 100644 javascript2/week3/homework/delay/delay.html
create mode 100644 javascript2/week3/homework/delay/delay.js
create mode 100644 javascript2/week3/homework/work1/index.html
create mode 100644 javascript2/week3/homework/work1/index.js
diff --git a/javascript2/week3/homework/button_click/button.js b/javascript2/week3/homework/button_click/button.js
new file mode 100644
index 00000000..adfd93c0
--- /dev/null
+++ b/javascript2/week3/homework/button_click/button.js
@@ -0,0 +1,11 @@
+
+document.getElementById('show_me').addEventListener('click', showMe)
+let showTime = null;
+function showMe(){
+ if(showTime == null){
+ showTime = setTimeout(showMe, 5000)
+ return true
+ }else{
+ console.log('after 5 second' + showTime)
+ }
+}
\ No newline at end of file
diff --git a/javascript2/week3/homework/button_click/index.html b/javascript2/week3/homework/button_click/index.html
new file mode 100644
index 00000000..ac40cea1
--- /dev/null
+++ b/javascript2/week3/homework/button_click/index.html
@@ -0,0 +1,14 @@
+
+
+
+
+
+ Codestin Search App
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/javascript2/week3/homework/delay/delay.html b/javascript2/week3/homework/delay/delay.html
new file mode 100644
index 00000000..4e7c682b
--- /dev/null
+++ b/javascript2/week3/homework/delay/delay.html
@@ -0,0 +1,12 @@
+
+
+
+
+
+ Codestin Search App
+
+
+
+
+
+
\ No newline at end of file
diff --git a/javascript2/week3/homework/delay/delay.js b/javascript2/week3/homework/delay/delay.js
new file mode 100644
index 00000000..126f5a58
--- /dev/null
+++ b/javascript2/week3/homework/delay/delay.js
@@ -0,0 +1,24 @@
+
+
+var notThisFunction = function(callback,delay,stringsToLog) {
+
+ var stringsToLog = [].slice.call(arguments) // get the parent arguments and convert to an array
+ stringsToLog.splice(0,2); // remove the first two argument which are the fuction supplied and the wait time
+
+ // a fuction to call the supplied function
+ var callnow = function() {
+ var params = arguments; // get the child arguments
+ var context = this;
+
+ setTimeout(function(){
+ callback.apply(context, params) // call the function
+ }, delay);
+ }
+
+ callnow.apply( this, stringsToLog ) // use apply to supply the arguments extracted from the parrent
+ };
+
+
+ notThisFunction(console.log, 3000,"string to log after 3 seconds")
+
+ notThisFunction(console.log, 5000, "string to log after 5 seconds")
diff --git a/javascript2/week3/homework/work1/index.html b/javascript2/week3/homework/work1/index.html
new file mode 100644
index 00000000..e3c1f372
--- /dev/null
+++ b/javascript2/week3/homework/work1/index.html
@@ -0,0 +1,16 @@
+
+
+
+
+
+ Codestin Search App
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/javascript2/week3/homework/work1/index.js b/javascript2/week3/homework/work1/index.js
new file mode 100644
index 00000000..27634d89
--- /dev/null
+++ b/javascript2/week3/homework/work1/index.js
@@ -0,0 +1,11 @@
+
+document.getElementById('btn_1').addEventListener('click', buttonOne)
+
+function buttonOne(elem){
+ let inputValue = document.getElementById('search_1').value;
+ if(inputValue == ''){
+ console.log('no input is shown')
+ }else{
+ console.log(inputValue)
+ }
+}
\ No newline at end of file
From 79c380122aa9563de282b1c51df23afbe18d7798 Mon Sep 17 00:00:00 2001
From: obi3965 <5571142@RTS-365.dk>
Date: Tue, 28 Apr 2020 00:48:44 +0200
Subject: [PATCH 06/10] my own json file is finished
---
javascript3/week1/json-file/images/apple.jpg | Bin 0 -> 10635 bytes
.../week1/json-file/images/applesin.jpg | Bin 0 -> 13342 bytes
javascript3/week1/json-file/images/banana.jpg | Bin 0 -> 3359 bytes
.../week1/json-file/images/banner-shop.png | Bin 0 -> 723533 bytes
javascript3/week1/json-file/images/grapes.jpg | Bin 0 -> 6236 bytes
javascript3/week1/json-file/images/kiwi.jpg | Bin 0 -> 5224 bytes
javascript3/week1/json-file/images/logo.jpg | Bin 0 -> 35347 bytes
javascript3/week1/json-file/images/mango.jpg | Bin 0 -> 3936 bytes
.../week1/json-file/images/mixfruit.jpg | Bin 0 -> 8081 bytes
javascript3/week1/json-file/images/peach.jpg | Bin 0 -> 9931 bytes
javascript3/week1/json-file/index.css | 264 +++++++++++++++++
javascript3/week1/json-file/index.html | 76 +++++
javascript3/week1/json-file/index.js | 278 ++++++++++++++++++
javascript3/week1/json-file/product.json | 69 +++++
14 files changed, 687 insertions(+)
create mode 100644 javascript3/week1/json-file/images/apple.jpg
create mode 100644 javascript3/week1/json-file/images/applesin.jpg
create mode 100644 javascript3/week1/json-file/images/banana.jpg
create mode 100644 javascript3/week1/json-file/images/banner-shop.png
create mode 100644 javascript3/week1/json-file/images/grapes.jpg
create mode 100644 javascript3/week1/json-file/images/kiwi.jpg
create mode 100644 javascript3/week1/json-file/images/logo.jpg
create mode 100644 javascript3/week1/json-file/images/mango.jpg
create mode 100644 javascript3/week1/json-file/images/mixfruit.jpg
create mode 100644 javascript3/week1/json-file/images/peach.jpg
create mode 100644 javascript3/week1/json-file/index.css
create mode 100644 javascript3/week1/json-file/index.html
create mode 100644 javascript3/week1/json-file/index.js
create mode 100644 javascript3/week1/json-file/product.json
diff --git a/javascript3/week1/json-file/images/apple.jpg b/javascript3/week1/json-file/images/apple.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..6a3ac41a1ff68a7aa53e179c21ad3776598a1a92
GIT binary patch
literal 10635
zcmbVy1ymf*x8@+hLU0lYg9J!`L4v~scXt>P7ziHRAuvIM6WnEj+u-gR+--0O1REr{
z1qm#_w|m~c|9iW8cDMR`eY#KAslH!V)vfCL-G}*yH2{&Ktb!~64Gj%o^mqUsmH<)!
zJZx-SY%Dxn9Nec*@$d;Li3kY@2x*?bAfaTWd-Ixsj)9(;9n8rL;%B92;Fjj*7ZMQ{
z7k|Skt0W_;2o@6;`KJ-Ir%#^}J|m3EUm0vT;1G1dw9YE0)v7>Lc_x2;u8{+l2cOCa&q(X
z3kr)6#nm;nb@dI6P0c^LdwTo&2L^|xrjawVbMp&}zt%T4x3*C`yL%_6XXh7}SAVW=
z{^5lN!1(X9{+-!>;zj((3mp>^0~7lnUTEl_AAv!P`Q#NB7Kwxgwy_f_J-0s&nPhBs
zRTnM;kLEGCiSs1hb4K1@uTTD=_HWGo?}&Z<|6=y<#QrC*MF2hq+GFQo5Cg;jmx|0e
zet7>o{PNP;7_4Qtw|UE0ssT!L$*SEJ1iM!XDkp_a8yIfRfhXki~VRi;RC*M
zbqM|nKcL@^J>j=%m9in<8m(D^Dr~02C&^m;h;bC8KHHyalWqSHY2b#lAU2DOW+?W}
zv48)g7G5#89U<|P=cQyCGPW*3WE$d6{so#7=o&I)fd3P8v{l?Zn}t)OvyX|B6vg1)CbH-8ZX85GkfrEFm>a+
zIIDR)%JqW{*=+}CdQ;GDSSs{OemnpOen&{P{$reL%D)=+pAG$A-{aT}3cIfxz|Ikx
zL!H1|X7c^-`~9u5gHGii(PlPHFQ~@E5K}Uxls!)mNKf(t$SaN1x+Ws7+EO&D#A2u%V?sVqqLdb0O)3*Ee8pHuT|u68%%g?!=U80b_!u6$?3z*~D05>{B1{w-?9jZ8y1CMTR3@LwTmiDq4P
znCoEFlp#)4P1x#-H!$NRSGTyT*4=nJ{P+wx!9HrWF}mu`p)x8s{EGQG9BECD=7?UC20