# \[JavaScript\] - How To Create An Array Of Phaser 3 Audio?

**URL:** <https://phaser.discourse.group/t/javascript-how-to-create-an-array-of-phaser-3-audio/13141>\
**Category:** Phaser 3\
**Created:** [April 12, 2023, 6:57pm UTC](https://phaser.discourse.group/t/javascript-how-to-create-an-array-of-phaser-3-audio/13141 "2023-04-12T18:57:36Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![JesseLee](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jesselee/32/7525_2.png) [@JesseLee](https://phaser.discourse.group/u/JesseLee)\
**Post date:** [April 12, 2023, 6:57pm UTC](https://phaser.discourse.group/t/javascript-how-to-create-an-array-of-phaser-3-audio/13141/1 "2023-04-12T18:57:36Z")

</div>

Hi,

**I am trying to create a JavaScript array of Phaser 3 audio.**

I have below but it errors out when viewed in browser:

```javascript
var MusicTemp;
const Music = [];

this.load.setPath('data/music');
this.load.audio('MusicTemp', ['BGM_Title.mp3']);
Music = this.sound.add('MusicTemp');

```

Any help would be appreciated, thanks!

Jesse

**Web demo can be played on Itch website below:**

> **[Phaser\_Engine by JesseLeePalser](https://jesseleepalser.itch.io/phaser-engine)**
>
> Play in your browser

![Phaser_3_Demo_2023-04-12_1742](https://global.discourse-cdn.com/free1/uploads/phaser1/original/2X/e/ef32c077608a35fd3e20412d86c4393b6d3fc551.png)

---

<div class="post-metadata">

**Author:** ![JesseLee](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jesselee/32/7525_2.png) [@JesseLee](https://phaser.discourse.group/u/JesseLee)\
**Post date:** [April 12, 2023, 11:30pm UTC](https://phaser.discourse.group/t/javascript-how-to-create-an-array-of-phaser-3-audio/13141/2 "2023-04-12T23:30:06Z")

</div>

Hi, did something different which I am happy with:

```javascript
var SFX_Player_Jump;
var SFX_Collect_Star;
var SFX_Player_Hit_By_Bomb;
var SFX_New_Bomb;

var BGM_Music;

function LoadAllAudio ()
{
    this.load.setPath('data/sound');
    this.load.audio('SFX_Player_Jump', ['SFX_Player_Jump.mp3']);
    this.load.audio('SFX_Collect_Star', ['SFX_Collect_Star.mp3']);
    this.load.audio('SFX_Player_Hit_By_Bomb', ['SFX_Player_Hit_By_Bomb.mp3']);
    this.load.audio('SFX_New_Bomb', ['SFX_New_Bomb.mp3']);

    this.load.setPath('data/music');
    this.load.audio('BGM_Music', ['BGM_Title.mp3']);

}

function PlaySoundEffect (index, volume, loop)
{
    index.setVolume(volume);
    index.setLoop(loop);
    index.play();
}

function PlayMusic (index, volume, loop)
{
    index.setVolume(volume);
    index.setLoop(loop);
    index.play();

}

```

---

<div class="post-metadata">

**Author:** ![samme](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/samme/32/5275_2.png) [@samme](https://phaser.discourse.group/u/samme)\
**Post date:** [April 13, 2023, 1:44am UTC](https://phaser.discourse.group/t/javascript-how-to-create-an-array-of-phaser-3-audio/13141/3 "2023-04-13T01:44:15Z")

</div>

For one-and-done playback, you can skip `sound.add()` and do

```js
this.sound.play('SFX_Collect_Star', { loop: false, volume: 1 });

```

---

<div class="post-metadata">

**Author:** ![JesseLee](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jesselee/32/7525_2.png) [@JesseLee](https://phaser.discourse.group/u/JesseLee)\
**Post date:** [April 13, 2023, 1:56am UTC](https://phaser.discourse.group/t/javascript-how-to-create-an-array-of-phaser-3-audio/13141/5 "2023-04-13T01:56:19Z")

</div>

Sorry that crashes when viewed in browser?

Please view my audio JavaScript file below:  
[https://bitbucket.org/jesseleepalser/phaser-engine/src/e545566dcf8f2be0e0a82b60504ee529f2beee85/coreAudio.js#lines-1](https://bitbucket.org/jesseleepalser/phaser-engine/src/e545566dcf8f2be0e0a82b60504ee529f2beee85/coreAudio.js#lines-1)
