setPath$ (original) (raw)

Set value at path in a nested array!

Alternatives: set, set$, setPath$.
Similar: hasPath, getPath, setPath$, removePath$.
Similar: get, set, remove.

function setPath$(x, p, v) // x: a nested array (updated!) // p: path // v: value

const xarray = require('extra-array');

var x = [[2, 4], 6, 8]; xarray.setPath$(x, [1], 60); // → [ [ 2, 4 ], 60, 8 ]

x; // → [ [ 2, 4 ], 60, 8 ]

xarray.setPath$(x, [0, 1], 40); // → [ [ 2, 40 ], 60, 8 ]

xarray.setPath$(x, [0, 1, 2], 100); // → [ [ 2, 40 ], 60, 8 ] (path not present, no effect)

References