@@ -4,8 +4,10 @@ class Dram {
44 this . audio = audio ;
55 this . className = 'playing' ;
66
7- key . addEventListener ( 'transitionend' , event => {
8- if ( event . propertyName !== 'transform' ) { return ; }
7+ key . addEventListener ( 'transitionend' , ( event ) => {
8+ if ( event . propertyName !== 'transform' ) {
9+ return ;
10+ }
911 key . classList . remove ( this . className ) ;
1012 } ) ;
1113 }
@@ -18,17 +20,18 @@ class Dram {
1820}
1921
2022const keys = Array . from ( document . querySelectorAll ( '.key' ) ) ;
21- const drams = Array . from ( document . querySelectorAll ( 'audio' ) )
22- . reduce ( ( drams , audio ) => {
23- const keyCode = audio . dataset . key ;
24- const key = keys . find ( key => key . dataset . key === keyCode ) ;
25- if ( ! key ) { return ; }
26- drams [ keyCode ] = new Dram ( key , audio ) ;
23+ const dramMap = Array . from ( document . querySelectorAll ( 'audio' ) ) . reduce ( ( drams , audio ) => {
24+ const keyCode = audio . dataset . key ;
25+ const pressedKey = keys . find ( key => key . dataset . key === keyCode ) ;
26+ if ( ! pressedKey ) {
2727 return drams ;
28- } , { } ) ;
28+ }
29+ return Object . assign ( drams , { [ keyCode ] : new Dram ( pressedKey , audio ) } ) ;
30+ } , { } ) ;
2931
30- window . addEventListener ( 'keydown' , event => {
31- const dram = drams [ event . keyCode . toString ( ) ] ;
32- if ( ! dram ) { return ; }
33- dram . playSound ( ) ;
32+ addEventListener ( 'keydown' , ( event ) => {
33+ const dram = dramMap [ event . keyCode . toString ( ) ] ;
34+ if ( dram ) {
35+ dram . playSound ( ) ;
36+ }
3437} ) ;
0 commit comments