JavaScript: Shallow vs Deep Copy

Copying values seems somewhat trivial. Nevertheless, it’s almost impossible to find a developer that has never had an issue with some wrong reference, or pointer in the case of C-like languages. In this article, I’m going to focus on how to copy variables/values in JavaScript.

JavaScript: Shallow vs Deep Copy

Primitive vs Reference Values

Primitive values

In JavaScript, a primitive (primitive value, primitive data type) is data that is not an object and has no methods. They are the following:

  • String
  • Number
  • BigInt
  • Boolean
  • undefined
  • Symbol
  • null (which indeed is a special case for every Object)

Primitive values are immutable — instead of changing them directly, we’re modifying a copy, without affecting the original. **They are passed by value. **They’re assigned to variables and passed into functions by copying their value.

let example = '0';
let example_copy = example;

example = '1';
console.log('example');      // '1'
console.log('example_copy'); // '0'

Reference Values

Reference values, objects, and arrays, which are a special type of an object, are a bit different. Contrary to primitives these are mutable. This means they have properties that we can access and change

**They are passed by reference and no copies are made before passing them. **This article is focused on these and different ways of copying them.

Shallow Copy

Shallow copy means we just pass just the reference meaning only the memory addresses are copied.

Let’s create a basket object indicating we have 1 keyboard and 2 monitors as default values and trying to copy it.

let basket = { keyboard: 1, monitor: 2 };
let basketShallow = basket;

basket.keyboard = 3;
console.log(basket);        // { keyboard: 3, monitor: 2 }
console.log(basketShallow); // { keyboard: 3, monitor: 2 }

Notice that the basket_shallow.keyboard value has changed. This happened because the value was copied by the reference and changing in one place will change for all variables sharing that object reference.

#javascript #coding #programming #deep-copy #shallow-copy

What is GEEK

Buddha Community

JavaScript: Shallow vs Deep Copy

JavaScript: Shallow vs Deep Copy

Copying values seems somewhat trivial. Nevertheless, it’s almost impossible to find a developer that has never had an issue with some wrong reference, or pointer in the case of C-like languages. In this article, I’m going to focus on how to copy variables/values in JavaScript.

JavaScript: Shallow vs Deep Copy

Primitive vs Reference Values

Primitive values

In JavaScript, a primitive (primitive value, primitive data type) is data that is not an object and has no methods. They are the following:

  • String
  • Number
  • BigInt
  • Boolean
  • undefined
  • Symbol
  • null (which indeed is a special case for every Object)

Primitive values are immutable — instead of changing them directly, we’re modifying a copy, without affecting the original. **They are passed by value. **They’re assigned to variables and passed into functions by copying their value.

let example = '0';
let example_copy = example;

example = '1';
console.log('example');      // '1'
console.log('example_copy'); // '0'

Reference Values

Reference values, objects, and arrays, which are a special type of an object, are a bit different. Contrary to primitives these are mutable. This means they have properties that we can access and change

**They are passed by reference and no copies are made before passing them. **This article is focused on these and different ways of copying them.

Shallow Copy

Shallow copy means we just pass just the reference meaning only the memory addresses are copied.

Let’s create a basket object indicating we have 1 keyboard and 2 monitors as default values and trying to copy it.

let basket = { keyboard: 1, monitor: 2 };
let basketShallow = basket;

basket.keyboard = 3;
console.log(basket);        // { keyboard: 3, monitor: 2 }
console.log(basketShallow); // { keyboard: 3, monitor: 2 }

Notice that the basket_shallow.keyboard value has changed. This happened because the value was copied by the reference and changing in one place will change for all variables sharing that object reference.

#javascript #coding #programming #deep-copy #shallow-copy

Samanta  Moore

Samanta Moore

1624959720

Java Vs. JavaScript: Know the Difference

What a mess it could be to share the same name — especially if you are a programming language. Even if you are already over 20 years old, IT newbies periodically confuse you with your namesake. This happens all the time with Java and JavaScript, although they are not related at all! As someone on the internet said. They correlate in much the same way as a car and a carpet.

Why do these two languages have such similar names? How do they differ from each other, and what else do they have in common? This article will provide the answers to these questions.

In the Beginning, It Was Java

The Same Year, A Little Bit Later: Meet JavaScript!

Technical Differences Between Java and JavaScript

What Can You Build in Java and JavaScript?

#java #javascript #javascript-development #java-development #learn-to-code-java #learn-javascript #programming #java-vs-javascript

Mahipal Nehra

Mahipal Nehra

1584529038

Java vs. JavaScript: Know The Difference

Java vs. JavaScript

#java #javascript #Java vs. JavaScript #Java vs JavaScript #programming

Rahul Jangid

1622207074

What is JavaScript - Stackfindover - Blog

Who invented JavaScript, how it works, as we have given information about Programming language in our previous article ( What is PHP ), but today we will talk about what is JavaScript, why JavaScript is used The Answers to all such questions and much other information about JavaScript, you are going to get here today. Hope this information will work for you.

Who invented JavaScript?

JavaScript language was invented by Brendan Eich in 1995. JavaScript is inspired by Java Programming Language. The first name of JavaScript was Mocha which was named by Marc Andreessen, Marc Andreessen is the founder of Netscape and in the same year Mocha was renamed LiveScript, and later in December 1995, it was renamed JavaScript which is still in trend.

What is JavaScript?

JavaScript is a client-side scripting language used with HTML (Hypertext Markup Language). JavaScript is an Interpreted / Oriented language called JS in programming language JavaScript code can be run on any normal web browser. To run the code of JavaScript, we have to enable JavaScript of Web Browser. But some web browsers already have JavaScript enabled.

Today almost all websites are using it as web technology, mind is that there is maximum scope in JavaScript in the coming time, so if you want to become a programmer, then you can be very beneficial to learn JavaScript.

JavaScript Hello World Program

In JavaScript, ‘document.write‘ is used to represent a string on a browser.

<script type="text/javascript">
	document.write("Hello World!");
</script>

How to comment JavaScript code?

  • For single line comment in JavaScript we have to use // (double slashes)
  • For multiple line comments we have to use / * – – * /
<script type="text/javascript">

//single line comment

/* document.write("Hello"); */

</script>

Advantages and Disadvantages of JavaScript

#javascript #javascript code #javascript hello world #what is javascript #who invented javascript

Hire Dedicated JavaScript Developers -Hire JavaScript Developers

It is said that a digital resource a business has must be interactive in nature, so the website or the business app should be interactive. How do you make the app interactive? With the use of JavaScript.

Does your business need an interactive website or app?

Hire Dedicated JavaScript Developer from WebClues Infotech as the developer we offer is highly skilled and expert in what they do. Our developers are collaborative in nature and work with complete transparency with the customers.

The technology used to develop the overall app by the developers from WebClues Infotech is at par with the latest available technology.

Get your business app with JavaScript

For more inquiry click here https://bit.ly/31eZyDZ

Book Free Interview: https://bit.ly/3dDShFg

#hire dedicated javascript developers #hire javascript developers #top javascript developers for hire #hire javascript developer #hire a freelancer for javascript developer #hire the best javascript developers