28
论坛初始管理员账号
回复讨论
0
当前站点已关闭游客查看评论,登录后可查看评论并参与回复讨论。
香色的 webViewJs 不是普通 JS 环境,按 Script 语义求值。理解错语义 = 真机闪退。这篇是硬规则速查。
javascript(function(){
// 全部逻辑放这里
return result; // IIFE 内部的 return 是合法的
})()
@js: 会包成 functionName 执行;@path: 走 XPath 查询。写代码前先确认自己拿到的是节点对象还是文本。removeHtmlKeys。@js: 段会吞掉后续段——分段顺序有讲究,兜底段放在不会被吞的位置。| 与 || 行为不同:前者是简单级联,后者带短路;空串会吞并兜底段。| 写法 | 走哪条实现 | 下标语义 |
|---|---|---|
$ 开头 |
SMJ 库 | 常规 0 起算 |
| 裸键 | 斜杠遍历 | 1 起算,越界回落首元素 |
同一个源里混用两种写法是数据错位的经典来源——统一风格,并在注释里写明用的是哪套。
8 个列表类动作要求「字典 + 非空 list + 首末元素是对象」;目录空标题会自动补「第N章」——但别依赖这个兜底掩盖解析错误,它会让「目录解析失败」看起来像「章节没抓全」。
调试时用结构化诊断输出,别用 alert:
javascript(function(){
var out = { step: 3, url: location.href, keys: Object.keys(payload||{}) };
/* ... */
return JSON.stringify(out); // 步骤号 + 关键中间值
})()
缓存与重试逻辑放在 IIFE 内部;转义与结构化生成遵守「生成而非拼接」纪律——用 JSON 序列化构造载荷,不要手拼字符串。