Перейти к содержанию

Ссылки

Помимо литералов, любой Объект в JavaScript (включая функции, массивы, регулярные выражения и т. п.) является ссылкой. Это означает следующее:

Мутации происходят по всем ссылкам

1
2
3
4
5
var foo = {};
var bar = foo; // bar - это ссылка на тот же объект

foo.baz = 123;
console.log(bar.baz); // 123

Равенство ссылок

1
2
3
4
5
6
var foo = {};
var bar = foo; // bar - это ссылка
var baz = {}; // baz - это *новый объект* в отличие от `foo`

console.log(foo === bar); // true
console.log(foo === baz); // false

Комментарии