I know that passed arguments inside function are copies of data passed to the function.
But why is it that you can change arrays and objects but not strings and numbers by changing them as arguments inside function ?
Array example:
const numbers = [1, 2]
const change = (arg) => {
arg.push(3)
};
change(numbers);
console.log(numbers); // [1,2,3] - arr changed!
Number example:
const number = 2
const change = (arg) => {
arg = arg + 1
};
change(number);
console.log(number); // 2 - number didn't change