Parâmetros-objeto JavaScript
Objetos, ao contrário de primitivos, são passados por referência. Isso significa que modificar um objeto dentro de uma função fará com que ele seja alterado também fora da função. Veja o exemplo:
function func(arr) {
arr[0] = '!';
}
let arr = [1, 2, 3];
func(arr);
console.log(arr); // exibirá ['!', 2, 3]
Determine, sem executar o código, o que será exibido no console:
function func(obj) {
obj.a = '!';
}
let obj = {a: 1, b: 2, c: 3};
func(obj);
console.log(obj);
Determine, sem executar o código, o que será exibido no console:
function func(arg) {
arg = '!';
}
let obj = {a: 1, b: 2, c: 3};
func(obj.a);
console.log(obj);
Determine, sem executar o código, o que será exibido no console:
function func(obj) {
obj = '!';
}
let obj = {a: 1, b: 2, c: 3};
func(obj.a);
console.log(obj);
Determine, sem executar o código, o que será exibido no console:
function func(arr) {
arr.splice(1, 1);
}
let arr = [1, 2, 3];
func(arr);
console.log(arr);
Determine, sem executar o código, o que será exibido no console:
function func(arr) {
arr.slice(1, 1);
}
let arr = [1, 2, 3];
func(arr);
console.log(arr);
Determine, sem executar o código, o que será exibido no console:
function func(arr) {
let newArr = arr;
newArr[0] = '!';
}
let arr = [1, 2, 3];
func(arr);
console.log(arr);