When I try to parse a string - to check if it is a valid date, javascript parses it as a date, and returns a valid date.
console.log(new Date("Agent 007")); // returns Sun Jul 01 2001 00:00:00 GMT+0200
console.log(Date.parse("Agent 007")); // returns 993938400000
console.log(moment.utc("Agent 007").valueOf()); // returns 993945600000
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.27.0/moment.min.js"></script>
How to prevent it ?