I am saying this because I actually want someone to come up with a convincing argument that will disuade me that immutability in JavaScript is actually something more than a passing fashion driven by React's popularity and its poorly designed state management.
When you speak of side-effects, I am hoping that you are talking about something real that you have experienced in a context other than React, because I have been programming JavaScript for over 15 years (vanilla.js, prototype, jquery, mootools, d3, ext.js, backbone, knockout, angular, vue, as well as plenty of back-end stuff in node.js) and I can tell you that 'mutations' have never been a problem until React came along.