// proove js evaluate args from left to right x = 3 function mut() { x = x * 2 return x } function test(x, y) { console.log('x=', x, ' y=', y) return x + y } test(x, mut()) // --> x = 3, y = 6 test(mut(), x) // --> x = 6, y = 6