Using this code :
fetch(\'notExists\') // <---- notice .then( function(response) { alert(response.status) } )
Reject handler is for networking and CORS errors iirc. If the request reaches the server and it responds with a valid http response, the promise gets fulfilled, even if the response is of code 4xx or 5xx.