如何简化javascript程序?

2023-12-04

我很想最小化该程序。 也许将 p1-16 放在一行代码中,与 count 和 gefunden 相同? 由于我的语言能力很差,我找不到正确的信息。

如果有一种方法可以最大限度地减少搜索命中 pdf 中的 if else 语句,那就太好了。

现在,我手动编写代码来添加新的 pdf,如搜索命中 pdf1 到 pdf2。任何更简单的方法都会对我有很大帮助。

function Suche(str){
    p1=document.getElementById('pdf1').innerHTML;
    p2=document.getElementById('pdf2').innerHTML;
    p3=document.getElementById('pdf3').innerHTML;
    p4=document.getElementById('pdf4').innerHTML;
    p5=document.getElementById('pdf5').innerHTML;
    p6=document.getElementById('pdf6').innerHTML;
    p7=document.getElementById('pdf7').innerHTML;
    p8=document.getElementById('pdf8').innerHTML;
    p9=document.getElementById('pdf9').innerHTML;
    p10=document.getElementById('pdf10').innerHTML;
    p11=document.getElementById('pdf11').innerHTML;
    p12=document.getElementById('pdf12').innerHTML;
    p13=document.getElementById('pdf13').innerHTML;
    p14=document.getElementById('pdf14').innerHTML;
    p15=document.getElementById('pdf15').innerHTML;
    p16=document.getElementById('pdf16').innerHTML;
    p17=document.getElementById('pdf17').innerHTML;
    gefunden1=0;
    gefunden2=0;
    gefunden3=0;
    gefunden4=0;
    gefunden5=0;
    gefunden6=0;
    gefunden7=0;
    gefunden8=0;
    gefunden9=0;
    gefunden10=0;
    gefunden11=0;
    gefunden12=0;
    gefunden13=0;
    gefunden14=0;
    gefunden15=0;
    gefunden16=0;
    gefunden17=0;
    count1=0;
    count2=0;
    count3=0;
    count4=0;
    count5=0;
    count6=0;
    count7=0;
    count8=0;
    count9=0;
    count10=0;
    count11=0;
    count12=0;
    count13=0;
    count14=0;
    count15=0;
    count16=0;
    count17=0;
    searchstring=str;
    
    
    //Search Hits PDF1
    
    endsearch=p1.length;
    weiter=1;
    
    
    if(p1.indexOf(str)>-1){
       gefunden1=1;
       pos1=p1.indexOf(str)+searchstring.length;
       count1=count1+1;}
    else{weiter=0;}
    
    for(i = 1; i <=10; i++){
       if(weiter==1){
          if(p1.indexOf(str,pos1)>-1){
             pos2=p1.indexOf(str,pos1)+searchstring.length;
             if (pos2<=endsearch){
                if(count1<10){
                   count1=count1+1;
                   pos1=pos2;}
                else{
                   count1="Mehr als 10";
                   pos1=pos2;}}
             else{
                weiter=0;}}
          else{
             weiter=0;}}}
    
    
    //Search Hits Pdf2
    
    
    endsearch=p2.length;
    weiter=1;
    
    if(p2.indexOf(str)>-1){
       gefunden2=1;
       pos1=p2.indexOf(str)+searchstring.length;
       count2=count2+1;}
    else{weiter=0;}
    
    
    for(i = 1; i <=10; i++){
       if(weiter==1){
          if(p2.indexOf(str,pos1)>-1){
             pos2=p2.indexOf(str,pos1)+searchstring.length;
             if (pos2<=endsearch){
                if(count1<10){
                   count2=count2+1;
                   pos1=pos2;}
                else{
                   count2="Mehr als 10";
                   pos1=pos2;}}
             else{
                weiter=0;}}
          else{
             weiter=0;}}}

等等....


为什么不使用名为 p 的数组?

const p = []
for (let i=1; i<18; i++) {
    p.push(document.getElementById(`pdf${i}`).innerHTML)
}

您可以对 gefunden 执行相同的操作并进行计数。其余代码(如果重复)可以放入一个函数中并在另一个 for 循环中调用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何简化javascript程序? 的相关文章

随机推荐

  • 用于密码存储的 asp.net 密钥库?

    我知道加密的密码可以存储在 web config 中 或者散列和加盐的密码可以存储在数据库中 但是是否可以将密码存储在密钥库之类的东西中 密钥库是否是存储应用程序所需的 服务帐户 密码的好主意 NET Windows 世界中与 Java 密
  • javascript sleep 函数通过 Promise 循环

    我打算在 Firefox 中打开一系列网址 每个网址应在 10 分钟内打开一个又一个 这是我的代码应在 Firebug 控制台中执行 function sleep time return new Promise resolve gt set
  • DataGridView WinForms 自动重新加载/更新/刷新

    我有一个带有DataGridView控制 我将其绑定到附加的数据库文件 mdf 中 我通过生成动态 Insert 语句来执行插入 然后我将此 sql 语句泵入SqlCommand对象并执行ExecuteNonQuery 方法 所有这些都是通
  • C 和 C++ #include 指令中可以接受反斜杠吗?

    There are two path separators in common use the Unix forward slash and the DOS backslash Rest in peace Classic Mac colon
  • 如何根据屏幕尺寸加载不同的主页

    我想根据屏幕尺寸加载不同的主页 有人可以帮忙吗 例如 对于屏幕尺寸 960 px 我想将默认登陆页面显示为index2 html 提前致谢 我知道不久前有人问过这个问题并回答过这个问题 但我认为我添加的解决方案比接受的答案更好 因为它不需要
  • 无法在 VS code 上运行 Tomcat 服务器

    我无法在 VS code 上运行 Tomcat 服务器 错误消息如下所示 apache tomcat 9 0 37 C Program is not recognized as an internal or external command
  • 使用 One-hot 编码标签进行交叉验证时,Keras scikit-learn 包装器的评分指标

    我正在实现一个神经网络 我想通过交叉验证来评估其性能 这是我当前的代码 def recall m y true y pred true positives K sum K round K clip y true y pred 0 1 pos
  • 如何检查某人是否登录到 MVC 会员页面

    我无法完全理解简单的会员资格是如何运作的 完成所有配置后 我将此代码放入 AccountController 中以查看它是如何工作的以及它是否有效 string UserName1 WebSecurity CurrentUserName b
  • string - '0' 做什么(字符串是一个字符)

    这是做什么的 while string i i lt lt 3 i lt lt 1 string 0 string 字符串 0 它会删除字符值还是其他什么 这从字符中减去string指向字符的ASCII码 0 So 0 0 给你0等等等等
  • Mysql:在 macOS 上安装后,用户“root”@“localhost”的访问被拒绝

    我刚刚通过从 MySQL 网站下载的 dmg 包在 macOS High Sierra v10 13 4 上安装了 MySQL v8 0 11 安装程序在安装过程中不要求任何权限或访问设置 安装完成后 我尝试运行 mysql u root
  • 如何更改默认的“www.example.com”域以在 Rails 中进行测试?

    我有一个 Rails 应用程序 它的行为取决于访问的域 例如 www myapp com 将以不同的方式调用 user myapp com 在生产使用中 这一切都工作正常 但我的测试代码总是看到主机名 www example com 有没有
  • Python 中 -m 开关是哪个单词的快捷方式? [复制]

    这个问题在这里已经有答案了 创建虚拟环境时 我运行 python3 m venv env 我明白那个 m 执行一个模块 venv在这种情况下 我也知道只有当你有 main py文件在你的模块中 那么 捷径是什么呢 m实际上代表什么 Is i
  • python3 和请求:仍然收到“sslv3 警报握手失败”

    我一直在尝试使用Python 3执行HTTPS请求requests并汇总了 StackOverflow 上记录的之前尝试中的几乎所有知识 我似乎一生都无法摆脱sslv3 alert handshake failure兔子洞 这是我的环境 m
  • 内核 qdiscs 模块中的网络数据包缓冲

    我想缓冲源自容器网络接口的输出数据包 这个netlink库文件名为sch plug chttps code woboq org linux linux net sched sch plug c html看起来可以解决问题 但我发现它很难使用
  • 使用curl点击javascript按钮

    我已经使用curl解析了一个页面 它包含一些复选框和一个 全选 和一个 提交 按钮 单击该按钮会选择每个复选框 全选 按钮会触发一个 javascript 函数 该函数实际上会选择所有复选框 现在我需要单击 全选 和 提交 按钮 我该怎么做
  • 防止 iframe 在刷新时加载“src”页面

    我正在创建一个静态网站并使用 iframe 问题是 当我导航到另一个页面时 例如 iframe 的以下代码 The src属性指向 aboutsus1 php 现在 当我导航到另一个页面时 例如 我转到 aboutus2 php 然后重新加
  • “void”作为方法的返回类型意味着什么? [复制]

    这个问题在这里已经有答案了 我对 空 感到困惑 因为它涉及方法 我不知道当一种方法具有 void 而另一种方法没有时 两种方法之间的区别是什么 例如 如果我这样做 Public meth int amount amount initial
  • 在java中加载精灵图像

    我想问一下为什么在将任何精灵图像加载到对象中时出错 这是我获取图像的方法 import java awt image BufferedImage import java io IOException public class SpriteS
  • 如何正确使用 allContactedBodies?

    我想使用 allContactedBodies 而不是 didBeginContact 和 didEndContact 当我做 NSLog node physicsBody allContactedBodies 与物体发生正确的接触 我得到
  • 如何简化javascript程序?

    我很想最小化该程序 也许将 p1 16 放在一行代码中 与 count 和 gefunden 相同 由于我的语言能力很差 我找不到正确的信息 如果有一种方法可以最大限度地减少搜索命中 pdf 中的 if else 语句 那就太好了 现在 我