# Can a \`change\` node access a globaI variable if it's an array?

**URL:** https://discourse.nodered.org/t/can-a-change-node-access-a-globai-variable-if-its-an-array/23629
**Category:** General
**Created:** [25 March 2020 16:15 UTC](https://discourse.nodered.org/t/can-a-change-node-access-a-globai-variable-if-its-an-array/23629 "2020-03-25T16:15:46Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![zenofmud](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/zenofmud/32/316_2.png) [@zenofmud](https://discourse.nodered.org/u/zenofmud)
#### Post date: [25 March 2020 16:15 UTC](https://discourse.nodered.org/t/can-a-change-node-access-a-globai-variable-if-its-an-array/23629/1 "2020-03-25T16:15:46Z")

</div>

I'm trying to build a remote tic-tac-toe game with my grandson. I'm storing the 'board' in a global array 'board' as a 3x3 array

```auto
var b = [[9,9,9],[9,9,9],[9,9,9]]
global.set("board",b)

```

The board is a set of buttons and each button sends a payload like this for r0,c0 `{"r":0,"c":0}`  
What I want to do in a `change` node is set global.board[0][0] to a number but if I use  
`global.board[msg.payload.r][msg.payload.c]` I get an error.

Is there a way to achieve this?

---

<div class="post-metadata">

### Author: ![JGKK](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/jgkk/32/18515_2.png) [@JGKK](https://discourse.nodered.org/u/JGKK)
#### Post date: [25 March 2020 16:37 UTC](https://discourse.nodered.org/t/can-a-change-node-access-a-globai-variable-if-its-an-array/23629/2 "2020-03-25T16:37:34Z")

</div>

If i use global.board[0][0] it works, using a message property like global.board[msg.array.x][msg.array.y] doesnt work for me either. Maybe use a function node in this case. It will work there probably.

---

<div class="post-metadata">

### Author: ![zenofmud](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/zenofmud/32/316_2.png) [@zenofmud](https://discourse.nodered.org/u/zenofmud)
#### Post date: [25 March 2020 16:48 UTC](https://discourse.nodered.org/t/can-a-change-node-access-a-globai-variable-if-its-an-array/23629/3 "2020-03-25T16:48:03Z")

</div>

Yup I've already swapped to using a function but I'd still like to know if it is doable.

This is what I did in the function node

```auto
var r = msg.payload.r
var c = msg.payload.c
var b = global.get("board")
b[r][c] = 2
global.set("board",b)
return msg

```

---

<div class="post-metadata">

### Author: ![zenofmud](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/zenofmud/32/316_2.png) [@zenofmud](https://discourse.nodered.org/u/zenofmud)
#### Post date: [24 May 2020 16:48 UTC](https://discourse.nodered.org/t/can-a-change-node-access-a-globai-variable-if-its-an-array/23629/4 "2020-05-24T16:48:04Z")

</div>

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.
