You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

逻辑或(OR)仅检查首个值,字符串前缀判断代码逻辑异常求助

问题分析与解决

你的代码里("<video" || "<img")存在逻辑错误:JavaScript中||逻辑或运算符会返回第一个真值,这里<video是字符串,属于真值,所以这个表达式永远只会返回<video,导致代码只会判断code1是否不以<video开头,完全忽略了<img的判断。

修正方案1:拆分startsWith判断

把两个开头判断分开,用||连接后再整体取反:

if(!(code1.startsWith("<video") || code1.startsWith("<img"))) {
  return ...;
}

这样逻辑就变成:如果code1既不以<video开头,也不以<img开头,才执行return语句。

修正方案2:使用正则表达式

用正则匹配字符串开头是否是<video或<img,写法更简洁:

if(!/^(<video|<img)/.test(code1)) {
  return ...;
}
  • ^表示匹配字符串的起始位置
  • (<video|<img)表示匹配其中任意一个前缀
  • test()方法检查字符串是否符合正则规则,取反后就是不符合的情况执行return

内容的提问来源于stack exchange,提问作者Arusu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 07:22:20