参数[0]和#34;有什么用?在实施javascriptexecutor时?

时间:2016-11-18 04:18:15

标签: javascript selenium

我已成功实施JavascriptExecutor,但我想知道为什么我们采用此阵列" arguments[0]"?

以下是代码:

 IJavaScriptExecutor executor = (IJavaScriptExecutor)driver;
 executor.ExecuteScript("arguments[0].click();", driver.FindElement(locator));

2 个答案:

答案 0 :(得分:2)

检查Selenium ExecuteScript页面

中的定义
  

这些参数将通过"参数"提供给JavaScript。魔术变量,好像该函数是通过" Function.apply"

调用的

,executeScript的返回值为:

  

返回:   布尔,Long,String,List或WebElement之一。或者null。

表示返回对象是一个列表,您可以通过arguments[0]魔术变量进行交互。

答案 1 :(得分:1)

它是对传入的参数的引用。在这种情况下,索引为0,因为您将元素引用作为executeScript调用中的第0个参数(包含脚本的String之后的参数)传递。 / p>