File tree Expand file tree Collapse file tree 1 file changed +26
-2
lines changed
Expand file tree Collapse file tree 1 file changed +26
-2
lines changed Original file line number Diff line number Diff line change @@ -23,8 +23,32 @@ const nFactorial = (n) => {
2323
2424/* Extra Credit */
2525const checkMatchingLeaves = ( obj ) => {
26- // return true if every property on `obj` is the same
27- // otherwise return false
26+ const vals = Object . values ( obj ) ;
27+ let flattened = [ ] ;
28+ let tempVal ;
29+ let allSame = true ;
30+
31+ const flatten = ( elements ) => {
32+ let newArr = [ ] ;
33+ for ( let i = 0 ; i < elements . length ; i ++ ) {
34+ if ( typeof elements [ i ] === 'object' ) {
35+ const temp = Object . values ( elements [ i ] ) ;
36+ newArr = newArr . concat ( flatten ( Object . values ( temp ) ) ) ;
37+ } else {
38+ newArr . push ( elements [ i ] ) ;
39+ }
40+ }
41+ return newArr ;
42+ } ;
43+
44+ flattened = flatten ( vals ) ;
45+
46+ flattened . forEach ( ( i ) => {
47+ tempVal = flattened [ 0 ] ;
48+ if ( i !== tempVal ) allSame = false ;
49+ } ) ;
50+
51+ return allSame ;
2852} ;
2953
3054/* eslint-enable no-unused-vars */
You can’t perform that action at this time.
0 commit comments