Thank you for the review. Yes, The player was intended to able to jump when it was 1 tile above ground. That was made to be able to make the controllability of the player better (It would not feel great if you had to be pixel perfectly on ground).
Thanks for the code part, I actually used unitys Physics2D.OverlapSphere, it was more efficient and had better results in testing.