chore: refactor the everything be true challenge (#45433)
This commit is contained in:
		| @@ -18,120 +18,123 @@ Remember, you can access object properties through either dot notation or `[]` n | |||||||
|  |  | ||||||
| # --hints-- | # --hints-- | ||||||
|  |  | ||||||
| `truthCheck([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy", "sex": "male"}, {"user": "Laa-Laa", "sex": "female"}, {"user": "Po", "sex": "female"}], "sex")` should return `true`. | `truthCheck([{name: "Quincy", role: "Founder", isBot: false}, {name: "Naomi", role: "", isBot: false}, {name: "Camperbot", role: "Bot", isBot: true}], "isBot")` should return `false`. | ||||||
|  |  | ||||||
| ```js | ```js | ||||||
| assert.strictEqual( | assert.strictEqual(truthCheck( | ||||||
|   truthCheck( |  | ||||||
|   [ |   [ | ||||||
|       { user: 'Tinky-Winky', sex: 'male' }, |     { name: "Quincy", role: "Founder", isBot: false }, | ||||||
|       { user: 'Dipsy', sex: 'male' }, |     { name: "Naomi", role: "", isBot: false }, | ||||||
|       { user: 'Laa-Laa', sex: 'female' }, |     { name: "Camperbot", role: "Bot", isBot: true } | ||||||
|       { user: 'Po', sex: 'female' } |  | ||||||
|   ], |   ], | ||||||
|     'sex' |   "isBot"), false); | ||||||
|   ), |  | ||||||
|   true |  | ||||||
| ); |  | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| `truthCheck([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy"}, {"user": "Laa-Laa", "sex": "female"}, {"user": "Po", "sex": "female"}], "sex")` should return `false`. | `truthCheck([{name: "Quincy", role: "Founder", isBot: false}, {name: "Naomi", role: "", isBot: false}, {name: "Camperbot", role: "Bot", isBot: true}], "name")` should return `true`. | ||||||
|  |  | ||||||
| ```js | ```js | ||||||
| assert.strictEqual( | assert.strictEqual(truthCheck( | ||||||
|   truthCheck( |  | ||||||
|   [ |   [ | ||||||
|       { user: 'Tinky-Winky', sex: 'male' }, |     { name: "Quincy", role: "Founder", isBot: false }, | ||||||
|       { user: 'Dipsy' }, |     { name: "Naomi", role: "", isBot: false }, | ||||||
|       { user: 'Laa-Laa', sex: 'female' }, |     { name: "Camperbot", role: "Bot", isBot: true } | ||||||
|       { user: 'Po', sex: 'female' } |  | ||||||
|   ], |   ], | ||||||
|     'sex' |   "name"), true); | ||||||
|   ), |  | ||||||
|   false |  | ||||||
| ); |  | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| `truthCheck([{"user": "Tinky-Winky", "sex": "male", "age": 0}, {"user": "Dipsy", "sex": "male", "age": 3}, {"user": "Laa-Laa", "sex": "female", "age": 5}, {"user": "Po", "sex": "female", "age": 4}], "age")` should return `false`. | `truthCheck([{name: "Quincy", role: "Founder", isBot: false}, {name: "Naomi", role: "", isBot: false}, {name: "Camperbot", role: "Bot", isBot: true}], "role")` should return `false`. | ||||||
|  |  | ||||||
| ```js | ```js | ||||||
| assert.strictEqual( | assert.strictEqual(truthCheck( | ||||||
|   truthCheck( |  | ||||||
|   [ |   [ | ||||||
|       { user: 'Tinky-Winky', sex: 'male', age: 2 }, |     { name: "Quincy", role: "Founder", isBot: false }, | ||||||
|       { user: 'Dipsy', sex: 'male', age: 0 }, |     { name: "Naomi", role: "", isBot: false }, | ||||||
|       { user: 'Laa-Laa', sex: 'female', age: 5 }, |     { name: "Camperbot", role: "Bot", isBot: true } | ||||||
|       { user: 'Po', sex: 'female', age: 4 } |  | ||||||
|   ], |   ], | ||||||
|     'age' |   "role"), false); | ||||||
|   ), |  | ||||||
|   false |  | ||||||
| ); |  | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| `truthCheck([{"name": "Pete", "onBoat": true}, {"name": "Repeat", "onBoat": true}, {"name": "FastForward", "onBoat": null}], "onBoat")` should return `false`. | `truthCheck([{name: "Pikachu", number: 25, caught: 3}, {name: "Togepi", number: 175, caught: 1}], "number")` should return `true`. | ||||||
|  |  | ||||||
| ```js | ```js | ||||||
| assert.strictEqual( | assert.strictEqual(truthCheck( | ||||||
|   truthCheck( |  | ||||||
|   [ |   [ | ||||||
|       { name: 'Pete', onBoat: true }, |     { name: "Pikachu", number: 25, caught: 3 }, | ||||||
|       { name: 'Repeat', onBoat: true }, |     { name: "Togepi", number: 175, caught: 1 }, | ||||||
|       { name: 'FastForward', onBoat: null } |  | ||||||
|   ], |   ], | ||||||
|     'onBoat' |   "number"), true); | ||||||
|   ), |  | ||||||
|   false |  | ||||||
| ); |  | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| `truthCheck([{"name": "Pete", "onBoat": true}, {"name": "Repeat", "onBoat": true, "alias": "Repete"}, {"name": "FastForward", "onBoat": true}], "onBoat")` should return `true`. | `truthCheck([{name: "Pikachu", number: 25, caught: 3}, {name: "Togepi", number: 175, caught: 1}, {name: "MissingNo", number: NaN, caught: 0}], "caught")` should return `false`. | ||||||
|  |  | ||||||
| ```js | ```js | ||||||
| assert.strictEqual( | assert.strictEqual(truthCheck( | ||||||
|   truthCheck( |  | ||||||
|   [ |   [ | ||||||
|       { name: 'Pete', onBoat: true }, |     { name: "Pikachu", number: 25, caught: 3 }, | ||||||
|       { name: 'Repeat', onBoat: true, alias: 'Repete' }, |     { name: "Togepi", number: 175, caught: 1 }, | ||||||
|       { name: 'FastForward', onBoat: true } |     { name: "MissingNo", number: NaN, caught: 0 }, | ||||||
|   ], |   ], | ||||||
|     'onBoat' |   "caught"), false); | ||||||
|   ), |  | ||||||
|   true |  | ||||||
| ); |  | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| `truthCheck([{"single": "yes"}], "single")` should return `true`. | `truthCheck([{name: "Pikachu", number: 25, caught: 3}, {name: "Togepi", number: 175, caught: 1}, {name: "MissingNo", number: NaN, caught: 0}], "number")` should return `false`. | ||||||
|  |  | ||||||
| ```js | ```js | ||||||
| assert.strictEqual(truthCheck([{ single: 'yes' }], 'single'), true); | assert.strictEqual(truthCheck( | ||||||
|  |   [ | ||||||
|  |     { name: "Pikachu", number: 25, caught: 3 }, | ||||||
|  |     { name: "Togepi", number: 175, caught: 1 }, | ||||||
|  |     { name: "MissingNo", number: NaN, caught: 0 }, | ||||||
|  |   ], | ||||||
|  |   "number"), false); | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| `truthCheck([{"single": ""}, {"single": "double"}], "single")` should return `false`. | `truthCheck([{name: "Quincy", username: "QuincyLarson"}, {name: "Naomi", username: "nhcarrigan"}, {name: "Camperbot"}], "username")` should return `false`. | ||||||
|  |  | ||||||
| ```js | ```js | ||||||
| assert.strictEqual( | assert.strictEqual(truthCheck( | ||||||
|   truthCheck([{ single: '' }, { single: 'double' }], 'single'), |   [ | ||||||
|   false |     { name: "Quincy", username: "QuincyLarson" }, | ||||||
| ); |     { name: "Naomi", username: "nhcarrigan" }, | ||||||
|  |     { name: "Camperbot" } | ||||||
|  |   ], | ||||||
|  |   "username"), false); | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| `truthCheck([{"single": "double"}, {"single": undefined}], "single")` should return `false`. | `truthCheck([{name: "freeCodeCamp", users: [{name: "Quincy"}, {name: "Naomi"}]}, {name: "Code Radio", users: [{name: "Camperbot"}]}, {name: "", users: []}], "users")` should return `true`. | ||||||
|  |  | ||||||
| ```js | ```js | ||||||
| assert.strictEqual( | assert.strictEqual(truthCheck( | ||||||
|   truthCheck([{ single: 'double' }, { single: undefined }], 'single'), |   [ | ||||||
|   false |     { name: "freeCodeCamp", users: [{ name: "Quincy" }, { name: "Naomi" }] }, | ||||||
| ); |     { name: "Code Radio", users: [{ name: "Camperbot" }] }, | ||||||
|  |     { name: "", users: [] }, | ||||||
|  |   ], | ||||||
|  |   "users"), true); | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| `truthCheck([{"single": "double"}, {"single": NaN}], "single")` should return `false`. | `truthCheck([{id: 1, data: {url: "https://freecodecamp.org", name: "freeCodeCamp}}, {id: 2, data: {url: "https://coderadio.freecodecamp.org/", name: "CodeRadio"}}, {id: null, data: {}}], "data")` should return `true`. | ||||||
|  |  | ||||||
| ```js | ```js | ||||||
| assert.strictEqual( | assert.strictEqual(truthCheck( | ||||||
|   truthCheck([{ single: 'double' }, { single: NaN }], 'single'), |   [ | ||||||
|   false |     { id: 1, data: { url: "https://www.freecodecamp.org", name: "freeCodeCamp" } }, | ||||||
| ); |     { id: 2, data: { url: "https://coderadio.freecodecamp.org/", name: "CodeRadio" } }, | ||||||
|  |     { id: null, data: {} }, | ||||||
|  |   ], | ||||||
|  |   "data"), true); | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | `truthCheck([{id: 1, data: {url: "https://freecodecamp.org", name: "freeCodeCamp}}, {id: 2, data: {url: "https://coderadio.freecodecamp.org/", name: "CodeRadio"}}, {id: null, data: {}}], "id")` should return `false`. | ||||||
|  |  | ||||||
|  | ```js | ||||||
|  | assert.strictEqual(truthCheck( | ||||||
|  |   [ | ||||||
|  |     { id: 1, data: { url: "https://www.freecodecamp.org", name: "freeCodeCamp" } }, | ||||||
|  |     { id: 2, data: { url: "https://coderadio.freecodecamp.org/", name: "CodeRadio" } }, | ||||||
|  |     { id: null, data: {} }, | ||||||
|  |   ], | ||||||
|  |   "id"), false); | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| # --seed-- | # --seed-- | ||||||
| @@ -143,7 +146,7 @@ function truthCheck(collection, pre) { | |||||||
|   return pre; |   return pre; | ||||||
| } | } | ||||||
|  |  | ||||||
| truthCheck([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy", "sex": "male"}, {"user": "Laa-Laa", "sex": "female"}, {"user": "Po", "sex": "female"}], "sex"); | truthCheck([{name: "Quincy", role: "Founder", isBot: false}, {name: "Naomi", role: "", isBot: false}, {name: "Camperbot", role: "Bot", isBot: true}], "isBot"); | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| # --solutions-- | # --solutions-- | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user