Too Long; Didn't Read
Virtual DOM is just a copy of the original DOM kept in the memory and synced with the real DOM by libraries such as ReactDOM. Virtual DOM has the same properties that of the Real DOM, but it lacks the power to directly change the content of the screen. The algorithm that is used for the diffing process is called as the Diffing algorithm. When the children of the components have a key attribute, React uses the keys to match children in the pre-updated virtual DOM.