diff --git a/index.js b/index.js index a9560baa3..ff057b314 100644 --- a/index.js +++ b/index.js @@ -209,17 +209,19 @@ Practice accessing data above by console.log-ing following items: //(1) Name of the first artist (0th index) in the array - +console.log('task 1(1)', artists[0].name); //(2) Bio of the third artist (2nd index) in the array - +console.log('task 1(2)', artists[2].bio); /* πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Task 2 (not auto tested): πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ (no function needed) There is a typo in your dataset 😱 The 9th artist, Vincent Van Gogh is currently Vincent Van Dough. Fix this issue and console.log() to check your work. */ +artists[8].name = 'Vincent Van Gogh'; +console.log('task 2', artists[8].name); /* πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Task 3: πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Use getArtistByIndex to do the following: @@ -230,11 +232,11 @@ Use getArtistByIndex to do the following: 🌟 EXAMPLE: if getArtistByIndex is invoked with the artists array and the number 0, it will return `the artist at index 0 is Amedeo Modigliani` */ -function getArtistByIndex(/*Your Code Here*/) { - /*Your Code Here*/ +function getArtistByIndex(artists, i) { + return `the artist at index ${artists[i].id} is ${artists[i].name}` } - +console.log('task 3', getArtistByIndex(artists, 4)); /* πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Task 4: πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Use listOfNames to do the following: @@ -244,11 +246,16 @@ Use listOfNames to do the following: 🌟 EXAMPLE of return: ["Amedeo Modigliani", "Vasiliy Kandinskiy", "Diego Rivera"....] */ -function listOfNames(/*Your Code Here*/) { - /*Your Code Here*/ +function listOfNames(artists) { + let artNames = [] + for (let i = 0; i < artists.length; i++){ + let name = artists[i].name + artNames.push(name); + } + return artNames; } - +console.log('task 4', listOfNames(artists)); /* πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Task 5: πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Use removeArtist to do the following: @@ -259,11 +266,17 @@ Use removeArtist to do the following: 5. Return the resulting copied array 🌟 EXAMPLE: if removeArtist is invoked with the artists array and the number 0, it will return the resulting array with Amedeo Modigliani removed from our dataset. */ -function removeArtist(/*Your Code Here*/) { - /*Your Code Here*/ +function removeArtist(artists, index) { + let removed = []; + for(let i = 0; i < artists.length; i ++){ + if(i != index) { + removed.push(artists[i]); + } + } + return removed; } - +console.log('Task 5', removeArtist(artists,5)); /* πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Task 6: πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Use addArtist to do the following: @@ -281,11 +294,12 @@ Use addArtist to do the following: 5. Add the newly created object to the copied array, then return the copied array 🌟 EXAMPLE: Invoking addArtist(artists, 'John Doe', '1988-2022', 'Full Stack Development', 'African American', 'I have a background in customer service at Big Retail Chain. I am attending BloomTech to become a Frontend Developer.') should return the artists array with the above object added to the end of the array. */ -function addArtist(/*Your Code Here*/) { - /*Your Code Here*/ +function addArtist(artists, name, years, genre, nationality, bio) { + artists.push({name:name, years: years, genre: genre, nationality: nationality, bio: bio}); + return artists; } - +console.log('task 6', addArtist(artists, 'Avery Lambert', '1991-2022','full stack web developer','African American', 'I love to cook!')); /* πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Task 7: πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Use lotsOfArt to do the following: @@ -295,11 +309,18 @@ Use lotsOfArt to do the following: 🌟 EXAMPLE: lotsOfArt(artists) will return ["Amedeo Modigliani", "Rene Magritte", ... "Albrecht DΓΌrer"] */ -function lotsOfArt(/*Your Code Here*/) { - /*Your Code Here*/ +function lotsOfArt(artists) { + let arts = [] +for(let i = 0; i < artists.length; i++){ + let paintings = artists[i].paintings + if(paintings > 100){ + arts.push(artists[i].name) + } +} +return arts; } - +console.log('task 7', lotsOfArt(artists)); /* πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Task 8: πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Use artistInfo to do the following: @@ -311,10 +332,15 @@ Use artistInfo to do the following: "Frida Kahlo de Rivera (Spanish pronunciation: [ˈfΙΎiΓ°a ˈkalo]; born Magdalena Carmen Frida Kahlo y CalderΓ³n; 6 July 1907 – 13 July 1954) was a Mexican artist who painted many portraits, self-portraits and works inspired by the nature and artifacts of Mexico. Inspired by the country's popular culture, she employed a naΓ―ve folk art style to explore questions of identity, postcolonialism, gender, class and race in Mexican society. Her paintings often had strong autobiographical elements and mixed realism with fantasy. In addition to belonging to the post-revolutionary Mexicayotl movement, which sought to define a Mexican identity, Kahlo has been described as a surrealist or magical realist.Born to a German father and a mestiza mother, Kahlo spent most of her childhood and adult life at her family home in CoyoacΓ‘n, La Casa Azul, now known and publicly accessible as the Frida Kahlo Museum. She was disabled by polio as a child. Until a traffic accident at age eighteen caused lifelong pain and medical problems, she had been a promising student headed for medical school. During her recovery, she returned to her childhood hobby of art with the idea of becoming an artist." */ -function artistInfo(/*Your Code Here*/){ - /*Your Code Here*/ +function artistInfo(artists, name){ + for(let i = 0; i < artists.length; i ++) { + if (artists[i].name === name) { + return artists[i].bio; + } + } } +console.log('task 8', artistInfo(artists, 'Frida Kahlo')); /* πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ Task 9: πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€πŸš€ @@ -327,11 +353,17 @@ Use artistByCountry to do the following: 🌟 EXAMPLE: Invoking artistByCountry(artists, 'Spanish') will return: [ 'Salvador Dali', 'Pablo Picasso', 'Francisco Goya'] */ -function artistByCountry(/*Your Code Here*/){ - /*Your Code Here*/ +function artistByCountry(artists, nationality){ + let country = [] + for(let i = 0; i < artists.length; i++){ + if (artists[i].nationality === nationality){ + country.push(artists[i].name) + } + } + return country; } - +console.log('Task 9', artistByCountry(artists, "Spanish")); /* ***** END OF TASKS ***** */ diff --git a/package-lock.json b/package-lock.json index 48103f21c..0f48f45e3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "codegraded-project-js", - "version": "0.0.8", + "version": "0.0.9", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "codegraded-project-js", - "version": "0.0.8", + "version": "0.0.9", "devDependencies": { "@babel/core": "7.17.5", "@babel/plugin-transform-runtime": "7.17.0",