О, вы, наверное, думаете, что это не кажется продвинутой темой, это в значительной степени тема для начинающих. Что, если я скажу, что вам действительно нужны эти темы для написания лучшего кода на JavaScript и, возможно, на Node Js.

В java-скрипте есть два типа: -

  1. Примитивные типы
  2. Непримитивные типы

В java-скрипте примитивные типы имеют 6 типов: -

var a = 5; // Число typeof

var a = "String it is" // строковый тип

var a = true // логический тип

var a = undefined // неопределенный тип

var a = symbol («только я») // тип символа

var a = null // нулевой тип

Примитивные типы данных действительно неизменяемы, то есть они просто представляют собой одно значение в java-скрипте, попробуйте думать о них как о атомах, которые не могут быть разбиты дальше, больше переменная (a) содержит фактическое значение 5, так что вы не можете слишком много о их. при передаче этих примитивных типов данных они передаются по значению, а не по ссылке, посмотрите на этот код.

Итак, ребята, согласно правилу, передают по значению, любое изменение значения «b» не должно влиять на «a», и да, это не так. Итак, насколько он используется для вас в повседневной работе, так как вы можете видеть, что происходит под капотом, вы можете исправить ошибку и легко найти ошибку, вы можете написать лучший код, сначала помня об этом, а затем это станет привычкой .

console.log (a) дает результат 5

console.log (b) дает 6.

С другой стороны, когда мы говорим о непримитивных типах данных в Java Script, они передаются по ссылке, то есть когда переменная (a) пытается скопировать другую переменную (b), тогда адрес передается ч / б элементам.

здесь obj1 передается по ссылке на obj2, и поэтому obj2 содержит адрес obj1, и любое изменение obj2 влияет на obj2.

Итак, вот золотой вопрос, как скопировать значение объектов в js, если вы хотите использовать метод глубокого копирования.

проверьте эту ссылку, чтобы увидеть: - https://repl.it/@aneagoie/pass-by-reference