Hello! I am trying to understand some of the deeper concepts behind Power Automate Desktop (PAD) when it comes to web automation actions. I see that PAD offers the ability to perform form and UI operations such as clicking on a button and populating a text field. But I also see an option to "Run JavaScript function on a webpage" which can allow you to perform the same actions, and possibly others that are beyond the limitations of the web automation actions.
For example, if I wanted to click on a button on a page, I could use the "Web Automation">"Web form filling">"Press button on web page" (optionally "Web Automation">"Click link on web page" if the button is implemented appropriately) OR I can perform "Web Automation">"Run JavaScript function on web page" with the following script:
document.querySelector('[/*CSS SELECTOR HERE*/]').click()
Another example would be if I wanted to fill out a text field I could use "Web Automation">"Web form filling">"Populate text field on a web page" and select the appropriate element and supply the given text, OR I can perform "Web Automation">"Run JavaScript function on web page" with the following script:
function ExecuteScript() {
document.getElementById(/*ElementID Here*/).value = "Some Text I Want To Insert";
}
Note that for most applications I can perform the "Run JavaScript function on a web page" operation as a fully enclosed function (function name and everything) or a single line command.
My point of confusion sits with not understanding the reasons for opting for an automation action over running a JavaScript function. What details should I take into account when deciding between achieving an action through one operation over the other? Are there any performance benefits that should be accounted for when choosing which implementation to use? Any information that would help expand on this narrow concept would be greatly appreciated.