By searching for "ps1" and "pathext", I'v found the corresponding code block from powershell/powershell github repository which explained the search order more specificly. See as:
/// <returns>
/// A collection of the patterns used to find the command.
/// The patterns are as follows:
/// 1. [commandName].cmdlet
/// 2. [commandName].ps1
/// 3..x
/// foreach (extension in PATHEXT)
/// [commandName].[extension]
/// x+1. [commandName]
/// </returns>
And ,alias succeed them all.