Why is my asynchronous writeFile method behaving sychronously? : I have a simple .js file that reads a text file and the writes it and reads the changed file. For learning purposes, I have implemented the below code. When the control reaches writeFile, shouldn't it be running in the background and the control should go to the console.log("Test") line and then back to the writeFile ? But it actually fully exceutes the writeFile and control goes to the log line which is basically a synchronous behaviour. Am I missing something here ?

`console.log("Begin")
var fs = require("fs");
fs.readFile("input.txt", function(err, data){										if(err){											console.log(err);
}										else{											console.log("Inside Read " + data.toString());											fs.writeFile("input.txt", "Replaced Text" , function(err){																							if(err){																								console.log(err);																							}																							else{																								console.log("Inside Write");																								var data = fs.readFileSync("Input.txt")																								console.log(data + " is the replaced text");																							}																														console.log("Test2");										}										);										}
}
);
console.log("Ended");`

