- This file declares a class, 
Player, instantiates it, and assigns it to a globalplayervariable. - The 
Playerclass contains four methods:constructor()playPause()skipTo()setVolume()
 - The 
constructor()method sets initial values for thecurrentlyPlaying,playState,volume, andsoundObjectproperties.currentlyPlayingis set to the first item inalbum.songs.- The initial 
playStateis"stopped". - The 
volumeis set to the number80. - The 
soundObjectinstantiates a newbuzz.soundobject using thesoundFileUrlproperty ofthis.currentlyPlaying. Thebuzzvariable doesn't appear to be initialized here, so presumably it's a dependency loaded elsewhere. 
 - The 
playPause()method accepts one parameter,song. It sets it tothis.currentlyPlayingby default. It checks to see ifthis.currentlyPlayingis different fromsong, and if so, it:- Stops the 
soundObjectproperty. - Removes the 
"playing"and"paused"classes from theelementproperty ofthis.currentlyPlaying. - Sets 
this.currentlyPlayingto the function's parameter,song. - Changes the 
playStateproperty to"stopped". - Instantiates a new sound object using 
this.currentlyPlaying, which was just updated tosong. 
 - Stops the 
 - The 
skipTo(percent)accepts apercentvariable and ifthis.playStateequates toplaying; the function does nothing and returns.this.soundObjectsets the time according to the percentage recieved.
 - The 
setVolume(percent)accepts apercentvariable and applies the value to the variable named volume.this.soundObjectsets volume based on percent revieved.
 
- 
      
 - 
        
Save GermanHoyos/2749806160e4875b85c07c0b8cd24a63 to your computer and use it in GitHub Desktop.  
    player.js analysis
  
        
  
    Sign up for free
    to join this conversation on GitHub.
    Already have an account?
    Sign in to comment