Both isPresent and isElementPresent return an "Element Finder" that:
"represents one ElementArrayFinder element (and looks more like a convenience object). As a result, everything that can be done with ElementFinder can also be done with ElementArrayFinder. ElementFinder element can be considered as a WebElement for most purposes, in particular, you can execute on these actions (for example, click, getText), since you would use WebElement.
Reader digest version: you can call methods on it or check if it exists.
isElementPresent actually calls isPresent if the locator is met, see the return statement: 
They essentially do the same thing. The protractor is built on top of WebDriver , which has its own methods. You can also use these methods in Protractor. In the event that testing Angular using these methods could lead to information failure, they provided users with Angular work-around; isElementPresent is one of those that you talked about.
tl; dr: Use isPresent . It was built for the Angular Test Pusher.
source share