微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在上标表达式中插入数组下标?

如何解决如何在上标表达式中插入数组下标?

我有这段代码在 javascript 中工作:

(document.querySelectorAll('[rel="next"]'))[0].click()

我正在尝试在 parenscript(来自 Common Lisp 生态系统的库)中编写相同的内容。我当前草图中的表达式正在由 REPL 在名为 Nyxtavailabe here 的包下进行评估。

CL-USER> (in-package :nyxt)

Nyxt 旨在成为一个可无限扩展的浏览器。因此,用户可以在程序运行时更改代码和/或创建扩展。这是设计上的实时可入侵性。

代码如下:

(ps:chain document (query-selector-all "[rel=next]")) (click))

使用 ps:ps 我可以“看到”parenscript 正在构建什么:

NYXT> (ps:ps (ps:chain document (query-selector-all "[rel=next]") (click)))
"document.querySelectorAll('[rel=next]').click();"

上面的结果接近我所需要的。但是,仍然缺少一件事:在 .click() 之前订阅 parenscript 数组(id. est.,Javascript 中的“[0]”)。

我有一些失败尝试

  1. 如果我尝试:
NYXT> (ps:ps (ps:chain document (query-selector-all "[rel=next]") [0] (click)))

我得到一个额外的“.”:

"document.querySelectorAll('[rel=next]').[0].click();"
  1. 如果我尝试:
NYXT> (ps:ps (ps:chain document (query-selector-all "[rel=next]") ([0]) (click)))

我得到一个额外的“。”和不必要的“()”:

"document.querySelectorAll('[rel=next]').[0]().click();"
  1. 如果我尝试:
NYXT> (ps:ps (ps:chain document (query-selector-all "[rel=next]")[0] (click)))

我得到一个额外的“.”:

"document.querySelectorAll('[rel=next]').[0].click();"
  1. 如果我尝试:
NYXT> (ps:ps (ps:chain document (query-selector-all "[rel=next]" [0]) (click)))

我得到一个额外的 [0] 作为另一个参数:

"document.querySelectorAll('[rel=next]',[0]).click();"

如何插入?

解决方法

偶然地,我发现了答案,诀窍就是只通过 0 而没有 []


NYXT> (ps:ps (ps:chain document  (query-selector-all "[rel=next]") 0 (click)))

"document.querySelectorAll('[rel=next]')[0].click();"

我认为 parenscript 可以有更多的教程和文档。我一直在努力。因此,我把它留在这里是为了帮助像我这样的其他 Common Lisp 新手:)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?