Нужен другой способ сравнения строк node.js, если оператор else ломает стек вызовов - PullRequest
0 голосов
/ 11 мая 2018

У меня возникла проблема. У меня огромный список строк, которые мне нужно сравнить, и, если совпадение найдено, он устанавливает переменную.Я пытаюсь сделать это в приложении express.js.Когда я пытаюсь выполнить это как оператор if / else в цикле foreach, стек вызовов превышен.Мне нужен другой способ сравнить строки и установить переменную, если совпадение найдено.Данные, которые я сравниваю, содержат 8000 строк.и время от времени мы будем запускать это против 200 строк.Это возможно?

    <%
processFiles = function(files){
if (files==="000001.pdf") {sDesc = "Title Page"}
  else if (files==="00001.pdf") {sDesc = "Project Title Page"}
        else if (files==="00350.pdf") {sDesc = "Project Financial Information"}
  else if (files==="00360.pdf") {sDesc = "Permit Application"}
  else if (files==="00400.pdf") {sDesc = "Bid Forms and Supplements"}
  else if (files==="00410.pdf") {sDesc = "Bid Forms"}
  else if (files==="004213.pdf") {sDesc = "Proposal Form"}
  else if (files==="00430.pdf") {sDesc = "Bid Form Supplements"}
  else if (files==="01455.pdf") {sDesc = "Mechanical Equipment Testing Adjusting Balancing"}
  else if (files==="01458.pdf") {sDesc = "Testing Laboratory Services"}
  else if (files==="014600.pdf") {sDesc = "Quality Procedures"}
  else if (files==="014620.pdf") {sDesc = "Testing Agency Services"}
  else if (files==="01465.pdf") {sDesc = "Equipment Testing and Startup"}
  else if (files==="01500.pdf") {sDesc = "Temporary Facilities and Controls"}
  else if (files==="015000.pdf") {sDesc = "Temporary Facilities and Controls"}
  else if (files==="01510.pdf") {sDesc = "Temporary Utilities"}
  else if (files==="015100.pdf") {sDesc = "Temporary Utilities"}
  else if (files==="01520.pdf") {sDesc = "Construction Facilities"}
  else if (files==="015200.pdf") {sDesc = "Field Offices and Sheds"}
  else if (files==="015240.pdf") {sDesc = "Construction Waste Management"}
  else if (files==="01530.pdf") {sDesc = "Temporary Construction"}
  else if (files==="01540.pdf") {sDesc = "Construction Aids"}
  else if (files==="015400.pdf") {sDesc = "Construction Aides"}
  else if (files==="015420.pdf") {sDesc = "USe of Government Crane and Elevator"}
  else if (files==="01550.pdf") {sDesc = "Vehicular Access and Parking"}
  else if (files==="015500.pdf") {sDesc = "Vehicular Access and Parking"}
  else if (files==="015520.pdf") {sDesc = "Traffic Control"}
  else if (files==="01560.pdf") {sDesc = "Temporary Barriers and Enclosures"}
  else if (files==="015600.pdf") {sDesc = "Barriers"}
  else if (files==="015610.pdf") {sDesc = "Protection of Existing Installations"}
  else if (files==="015632.pdf") {sDesc = "Temporary Safety Fence"}
  else if (files==="015639.pdf") {sDesc = "Tree Protection and Trimming"}
  else if (files==="01570.pdf") {sDesc = "Temporary Controls"}
  else if (files==="015700.pdf") {sDesc = "Temporary Controls"}
  else if (files==="015710.pdf") {sDesc = "Storm Water Pollution Prevention"}
  else if (files==="015713.pdf") {sDesc = "Erosion Sedimentation Control"}
  else if (files==="015719.pdf") {sDesc = "Temporary Environmental Controls"}
  else if (files==="015720.pdf") {sDesc = "Environmental Controls"}
  else if (files==="015721.pdf") {sDesc = "Indoor Air Quality Controls"}
  else if (files==="015730.pdf") {sDesc = "Water Pollution Control"}
  else if (files==="015750.pdf") {sDesc = "Tree and Plant Protection"}
  else if (files==="015760.pdf") {sDesc = "Protected Species"}
  else if (files==="01580.pdf") {sDesc = "Project Identification"}
  else if (files==="015800.pdf") {sDesc = "Project Identification"}
  else if (files==="015813.pdf") {sDesc = "Temporary Project Signage"}
  else if (files==="01590.pdf") {sDesc = "Field Offices and Sheds"}
  else if (files==="01600.pdf") {sDesc = "Product Requirements"}
  else if (files==="016000.pdf") {sDesc = "Product Requirements"}
  else if (files==="016000.02.pdf") {sDesc = "Agreement for Storing Materials and Equipment Off Site"}
  else if (files==="01601.pdf") {sDesc = "Job Conditions"}
  else if (files==="01610.pdf") {sDesc = "Basic Product Requirements"}
  else if (files==="016100.pdf") {sDesc = "Common Product Requirements"}
  else if (files==="016110.pdf") {sDesc = "Project Identification"}
  else if (files==="01620.pdf") {sDesc = "Product Options"}
  else if (files==="016200.pdf") {sDesc = "Substitutions"}
  else if (files==="01630.pdf") {sDesc = "Product Substitution Procedures"}
  else if (files==="016300.pdf") {sDesc = "Product Substitutions"}
  else if (files==="01635.pdf") {sDesc = "Substitution Procedures"}
  else if (files==="01640.pdf") {sDesc = "Owner-Furnished Products"}
  else if (files==="016400.pdf") {sDesc = "Owner Furnished Products"}
  else if (files==="016440.pdf") {sDesc = "Government Furnished Products"}
  else if (files==="01650.pdf") {sDesc = "Product Delivery Requirements"}
  else if (files==="01660.pdf") {sDesc = "Product Storage and Handling Requirements"}
  else if (files==="016600.pdf") {sDesc = "Product Delivery and Storage Handling Requirements"}
  else if (files==="01700.pdf") {sDesc = "Execution Requirements"}
  else if (files==="017000.pdf") {sDesc = "Execution Requirements"}
  else if (files==="01710.pdf") {sDesc = "Examination"}
  else if (files==="017100.pdf") {sDesc = "Examination and Preparation"}
  else if (files==="017120.pdf") {sDesc = "Surveying"}
  else if (files==="01720.pdf") {sDesc = "Preparation"}
  else if (files==="017200.pdf") {sDesc = "Field Engineering"}
  else if (files==="01730.pdf") {sDesc = "Execution"}
  else if (files==="017300.pdf") {sDesc = "Execution"}
  else if (files==="01731.pdf") {sDesc = "Cutting and Patching"}
  else if (files==="017310.pdf") {sDesc = "Cutting and Patching"}
  else if (files==="01732.pdf") {sDesc = "Waste Management"}
  else if (files==="017329.pdf") {sDesc = "Cutting and Patching"}
  else if (files==="01740.pdf") {sDesc = "Cleaning"}
  else if (files==="017400.pdf") {sDesc = "Warranties"}
  else if (files==="017410.pdf") {sDesc = "Construction Waste Management"}
  else if (files==="017419.pdf") {sDesc = "Construction Waste Management and Disposal"}
  else if (files==="017420.pdf") {sDesc = "Construction Demolition Waste Management and Disposal"}
  else if (files==="017423.pdf") {sDesc = "Cleaning"}
  else if (files==="01743.pdf") {sDesc = "Hazardous Universal Waste Management and Disposal"}
  else if (files==="01750.pdf") {sDesc = "Starting and Adjusting"}
  else if (files==="017513.pdf") {sDesc = "Checkout Procedures"}
  else if (files==="01760.pdf") {sDesc = "Protecting Installed Construction"}
  else if (files==="01770.pdf") {sDesc = "Closeout Procedures"}
  else if (files==="017700.pdf") {sDesc = "Closeout Procedures"}
  else if (files==="017710.pdf") {sDesc = "Warranties and Bonds"}
  else if (files==="017720.pdf") {sDesc = "Project Closeout"}
  else if (files==="017721.pdf") {sDesc = "No Asbestos Affidavit"}
  else if (files==="017722.pdf") {sDesc = "No Lead Affidavit"}
  else if (files==="01780.pdf") {sDesc = "Closeout Submittals"}
  else if (files==="017800.pdf") {sDesc = "Closeout Submittals"}
  else if (files==="017810.pdf") {sDesc = "Warranties Forms"}
  else if (files==="01781.pdf") {sDesc = "Project Record Documents"}
  else if (files==="017810.pdf") {sDesc = "Project Record Documents"}
  else if (files==="017813.pdf") {sDesc = "Bonds and Warranties"}
  else if (files==="01782.pdf") {sDesc = "Operation and Maintenance Data"}
  else if (files==="017820.pdf") {sDesc = "Operation and Maintenance Data"}
  else if (files==="017823.pdf") {sDesc = "Operation and Maintenance Data"}
  else if (files==="017830.pdf") {sDesc = "Demonstration and Training"}
  else if (files==="017839.pdf") {sDesc = "Project Record Documents"}
  else if (files==="017843.pdf") {sDesc = "Spare Parts"}
  else if (files==="017846.pdf") {sDesc = "Extra Stock Materials"}
  else if (files==="017900.pdf") {sDesc = "Demonstration and Training"}
  else if (files==="017920.pdf") {sDesc = "Training"}
  else if (files==="01800.pdf") {sDesc = "Facility Operation"}
  else if (files==="01810.pdf") {sDesc = "Commissioning"}
  else if (files==="01811.pdf") {sDesc = "Sustainable Design Requirements"}
  else if (files==="018111.pdf") {sDesc = "Sustainable Design Requirements"}
  else if (files==="018113.pdf") {sDesc = "Sustainable Design Requirements"}
  else if (files==="018113.13.pdf") {sDesc = "Sustainable Design Requirements"}
  else if (files==="018113.23.pdf") {sDesc = "Sustainable Design Requirements"}
  else if (files==="018115.pdf") {sDesc = "Construction Indoor Air Quality Management"}
  else if (files==="01820.pdf") {sDesc = "Demonstration and Training"}
  else if (files==="01830.pdf") {sDesc = "Operation and Maintenance"}
  else if (files==="01890.pdf") {sDesc = "Reconstruction"}
  else if (files==="01900.pdf") {sDesc = "Facility Decommissioning"}
  else if (files==="019000.pdf") {sDesc = "General Commissioning Requirements"}
  else if (files==="019100.pdf") {sDesc = "General Commissioning Requirements"}
  else if (files==="019113.pdf") {sDesc = "Commissioning"}
  else if (files==="019114.pdf") {sDesc = "Commissioning Authority Responsibilities"}
  else if (files==="02001.pdf") {sDesc = "Mobilization"}
  else if (files==="02005.pdf") {sDesc = "Excavation"}
  else if (files==="02010.pdf") {sDesc = "Subsurface Soils Investigation"}
  else if (files==="02234.pdf") {sDesc = "Sub Base Course"}
  else if (files==="02235.pdf") {sDesc = "Crushed Base Course"}
  else if (files==="02237.pdf") {sDesc = "Site Clearing"}
  else if (files==="02240.pdf") {sDesc = "Dewatering"}
  else if (files==="02246.pdf") {sDesc = "Topsoiling and Finished Grading"}
  else if (files==="02250.pdf") {sDesc = "Shoring and Underpinning"}
  else if (files==="02251.pdf") {sDesc = "Shoring"}
  else if (files==="02260.pdf") {sDesc = "Excavation Support and Protection"}
  else if (files==="02270.pdf") {sDesc = "Slope Protections and Erosion Control"}
  else if (files==="02275.pdf") {sDesc = "Rip Rap"}
  else if (files==="02280.pdf") {sDesc = "Grade Adjustment and Abandonment of Existing Miscellaneous Structures"}
  else if (files==="02285.pdf") {sDesc = "Rebuilt Miscellaneous Structure"}
  else if (files==="02290.pdf") {sDesc = "Site Monitoring"}
  else if (files==="02300.pdf") {sDesc = "Earthwork"}
  else if (files==="023000.pdf") {sDesc = "Subsurface Investigation"}
  else if (files==="02301.pdf") {sDesc = "Buried Steel Pipe and Fittings"}
  else if (files==="02302.pdf") {sDesc = "Buried Ductile Iron Pipe and Fittings"}
  else if (files==="02303.pdf") {sDesc = "Buried PVC Pipe with Ductile Iron Fittings"}
  else if (files==="02304.pdf") {sDesc = "Fusible PVC Pipe with Ductile Iron Fittings"}
  else if (files==="02310.pdf") {sDesc = "Grading"}
  else if (files==="02315.pdf") {sDesc = "Excavation and Fill"}
  else if (files==="02320.pdf") {sDesc = "Pipe Bedding and Backfill"}
  else if (files==="023200.pdf") {sDesc = "Geotechnical Investigation Report"}
  else if (files==="02321.pdf") {sDesc = "Casing Pipe"}
  else if (files==="02325.pdf") {sDesc = "Dredging"}
  else if (files==="02330.pdf") {sDesc = "Embankment"}
  else if (files==="02335.pdf") {sDesc = "Subgrade and Roadbed"}
  else if (files==="02340.pdf") {sDesc = "Soil Stabilization"}
  else if (files==="02350.pdf") {sDesc = "Reference Markers"}
  else if (files==="02360.pdf") {sDesc = "Soil Treatment"}
  else if (files==="02370.pdf") {sDesc = "Erosion and Sedimentation Control"}
  else if (files==="02380.pdf") {sDesc = "Scour Protection"}
  else if (files==="02390.pdf") {sDesc = "Shoreline Protection & Mooring Structure"}
  else if (files==="02400.pdf") {sDesc = "Tunneling Boring and Jacking"}
  else if (files==="024000.pdf") {sDesc = "Demolition"}
  else if (files==="02410.pdf") {sDesc = "Tunnel Excavation"}
  else if (files==="024100.pdf") {sDesc = "Building Demolition"}
  else if (files==="024101.pdf") {sDesc = "Cutting and Patching"}
  else if (files==="024102.pdf") {sDesc = "Selective Demolition"}
  else if (files==="024116.pdf") {sDesc = "Structure Demolition"}
  else if (files==="024119.pdf") {sDesc = "Selective Structure Demolition"}
  else if (files==="024121.pdf") {sDesc = "Removal of Existing Equipment"}
  else if (files==="024120.pdf") {sDesc = "Building Demolition"}
  else if (files==="02420.pdf") {sDesc = "Initial Tunnel Support System"}
  else if (files==="02425.pdf") {sDesc = "Tunnel Lining"}
  else if (files==="02430.pdf") {sDesc = "Tunnel Grouting"}
  else if (files==="024300.pdf") {sDesc = "Removal and Disposal of Structures and Obstructions"}
  else if (files==="02440.pdf") {sDesc = "Immersed and Sunken Tube Tunnel"}
  else if (files==="02441.pdf") {sDesc = "Microtunneling"}
  else if (files==="02442.pdf") {sDesc = "Cut and Cover Tunnel"}
  else if (files==="02443.pdf") {sDesc = "Tunnel Leak Repair"}
  else if (files==="02444.pdf") {sDesc = "Shaft Construction"}
  else if (files==="02445.pdf") {sDesc = "Boring or Jacking Conduit"}
  else if (files==="02446.pdf") {sDesc = "Electrical Raceway Horizontal Bores"}
  else if (files==="02450.pdf") {sDesc = "Foundation & Load-Bearing Element"}
  else if (files==="02455.pdf") {sDesc = "Driven Pile"}
  else if (files==="024600.pdf") {sDesc = "Steel Helical Pulldown Piers"}
  else if (files==="02465.pdf") {sDesc = "Bored Pile"}
  else if (files==="02475.pdf") {sDesc = "Caisson"}
  else if (files==="02480.pdf") {sDesc = "Foundation Wall"}
  else if (files==="02490.pdf") {sDesc = "Anchor"}
  else if (files==="02495.pdf") {sDesc = "Instrumentation and Monitoring"}
  else if (files==="02500.pdf") {sDesc = "Utility Service"}
  else if (files==="02505.pdf") {sDesc = "Construction Seal"}
  else if (files==="02510.pdf") {sDesc = "Water Distribution"}
  else if (files==="025100.pdf") {sDesc = "Radon Mitigation System"}
  else if (files==="02511.pdf") {sDesc = "Concrete Paving"}
  else if (files==="02515.pdf") {sDesc = "Portland Cement Concrete Pavement"}
  else if (files==="02520.pdf") {sDesc = "Well"}
  else if (files==="02528.pdf") {sDesc = "Concrete Curb and Gutter"}
  else if (files==="02529.pdf") {sDesc = "Concrete Sidewalks Driveways Approaches Curb Turn Fillets"}
  else if (files==="02530.pdf") {sDesc = "Sanitary Sewerage"}
  else if (files==="025300.pdf") {sDesc = "Sanitary Sewerage"}
  else if (files==="02553.pdf") {sDesc = "Natural Gas Distribution"}
  else if (files==="02540.pdf") {sDesc = "Septic Tank System"}
  else if (files==="02546.pdf") {sDesc = "Aggregate Surfacing"}
  else if (files==="02550.pdf") {sDesc = "Piped Energy Distribution"}
  else if (files==="025530.pdf") {sDesc = "Natural Gas Distribution"}
  else if (files==="02570.pdf") {sDesc = "Process Materials Distribution Structure"}
  else if (files==="02580.pdf") {sDesc = "Electrical & Communication Structure"}
  else if (files==="02581.pdf") {sDesc = "Pavement Marking and Markers"}
  else if (files==="02590.pdf") {sDesc = "Site Grounding"}
  else if (files==="02600.pdf") {sDesc = "Drainage and Containment"}
  else if (files==="02603.pdf") {sDesc = "Casing"}
  else if (files==="02605.pdf") {sDesc = "Dampproofing"}
  else if (files==="02607.pdf") {sDesc = "Precast Concrete Pipe Structures Manholes and Covers"}
  else if (files==="02610.pdf") {sDesc = "Pipe Culvert"}
  else if (files==="02611.pdf") {sDesc = "High Density Polytheylene Pipe"}
  else if (files==="02616.pdf") {sDesc = "Pavement Removal and Repair"}
  else if (files==="02620.pdf") {sDesc = "Subdrainage"}
  else if (files==="026225.pdf") {sDesc = "Excavation and Removal of Contaminated Materials"}
  else if (files==="02630.pdf") {sDesc = "Storm Drainage"}
  else if (files==="02640.pdf") {sDesc = "Culverts & Manufactured Construction"}
  else if (files==="02650.pdf") {sDesc = "Concrete Paving Joint Sealants"}
  else if (files==="02660.pdf") {sDesc = "Ponds and Reservoir"}
  else if (files==="02667.pdf") {sDesc = "Water Lines"}
  else if (files==="02668.pdf") {sDesc = "WAter Service Connections"}
  else if (files==="02669.pdf") {sDesc = "Water Line Accessories"}
  else if (files==="02670.pdf") {sDesc = "Constructed Wetland"}
  else if (files==="02671.pdf") {sDesc = "Trace and Reference Markers"}
  else if (files==="02675.pdf") {sDesc = "Disinfection of Water System"}
  else if (files==="02676.pdf") {sDesc = "Disinfection of Water Storage Facilities"}
  else if (files==="02677.pdf") {sDesc = "Cleaning and Disinfection of Water Distribution Systems"}
  else if (files==="02700.pdf") {sDesc = "Bases  Ballasts  Pavements and Appurtenance"}
  else if (files==="02704.pdf") {sDesc = "Multi Port Effluent Diffuser System"}
 else if (files==="02990.pdf") {sDesc = "Structure Moving"}
  else if (files==="03002.pdf") {sDesc = "Concrete"}
  else if (files==="030100.pdf") {sDesc = "Maintenance of Concrete"}
  else if (files==="03050.pdf") {sDesc = "Basic Concrete Materials and Methods"}
  else if (files==="03051.pdf") {sDesc = "Cold Weather Concreting"}
  else if (files==="03052.pdf") {sDesc = "Hot Weather Concreting"}
  else if (files==="03100.pdf") {sDesc = "Concrete Forms and Accessories"}
  else if (files==="031000.pdf") {sDesc = "Concrete Forming and Accessories"}
  else if (files==="03110.pdf") {sDesc = "Structural Cast-in-Place Concrete Form"}
  else if (files==="031100.pdf") {sDesc = "Permanent Forms"}
  else if (files==="031110.pdf") {sDesc = "Concrete Forming"}
  else if (files==="031113.pdf") {sDesc = "Structural Cast in Place Concrete Forming"}
  else if (files==="03119.pdf") {sDesc = "Insulating Concrete Forming"}
  else if (files==="03120.pdf") {sDesc = "Architectural Cast-in-Place Concrete Form"}
  else if (files==="03130.pdf") {sDesc = "Permanent Form"}
  else if (files==="03150.pdf") {sDesc = "Concrete Accessories"}
  else if (files==="031511.pdf") {sDesc = "Concrete Anchors and Inserts"}
  else if (files==="03200.pdf") {sDesc = "Concrete Reinforcement"}
  else if (files==="032000.pdf") {sDesc = "Concrete Reinforcing"}
  else if (files==="03210.pdf") {sDesc = "Reinforcing Steel"}
  else if (files==="032100.pdf") {sDesc = "Reinforcement Bars"}
  else if (files==="03220.pdf") {sDesc = "Welded Wire Fabric"}
  else if (files==="03230.pdf") {sDesc = "Stressing Tendon"}
  else if (files==="03240.pdf") {sDesc = "Fibrous Reinforcing"}
  else if (files==="03250.pdf") {sDesc = "Post-Tensioning"}
  else if (files==="03300.pdf") {sDesc = "Cast-in-Place Concrete"}
  else if (files==="03301.pdf") {sDesc = "Cast in Place Concrete"}
  else if (files==="033000.pdf") {sDesc = "Cast-In-Place Concrete"}
  else if (files==="033010.pdf") {sDesc = "Concrete Testing and Inspection Service"}
  else if (files==="033020.pdf") {sDesc = "Post Installed Anchors"}
  else if (files==="033030.pdf") {sDesc = "Cast In Place Concrete Slabs"}
  else if (files==="033053.pdf") {sDesc = "Misc Cast In Place Concrete"}
  else if (files==="03310.pdf") {sDesc = "Structural Concrete"}
  else if (files==="033111.pdf") {sDesc = "Norma Weight Structural Concrete"}
  else if (files==="03315.pdf") {sDesc = "Site Conrete Sidewalks and Slabs"}
  else if (files==="033200.pdf") {sDesc = "Elevated Composite Concrete Slabs"}
  else if (files==="033300.pdf") {sDesc = "CAst in Place Architectural Concrete"}
  else if (files==="03330.pdf") {sDesc = "Architectural Concrete"}
  else if (files==="03340.pdf") {sDesc = "Low Density Concrete"}
  else if (files==="03350.pdf") {sDesc = "Concrete Finishing"}
  else if (files==="033500.pdf") {sDesc = "Concrete Finishing"}
  else if (files==="03351.pdf") {sDesc = "Concrete Floor Finishes"}
  else if (files==="033511.pdf") {sDesc = "Concrete Floor Finishes"}
  else if (files==="033513.pdf") {sDesc = "Concrete Floor Finishing"}
  else if (files==="033517.pdf") {sDesc = "Concrete Sealer Hardener Waterproofer"}
  else if (files==="033533.pdf") {sDesc = "Stamped Concrete Finishing"}
  else if (files==="0335400.pdf") {sDesc = "Cast Underlayment"}
  else if (files==="03360.pdf") {sDesc = "Concrete Finishes"}
  else if (files==="033600.pdf") {sDesc = "Special Concrete Floor Finish"}
  else if (files==="033650.pdf") {sDesc = "Concrete Floor Dye"}
  else if (files==="03370.pdf") {sDesc = "Specially Placed Concrete"}
  else if (files==="03380.pdf") {sDesc = "Post-Tensioned Concrete"}
  else if (files==="03390.pdf") {sDesc = "Concrete Curing"}
  else if (files==="033923.pdf") {sDesc = "Membrane Concrete Curing"}
  else if (files==="033950.pdf") {sDesc = "Sealer Hardener Concrete Floor Finish"}
  else if (files==="03400.pdf") {sDesc = "Precast Concrete"}
  else if (files==="03409.pdf") {sDesc = "Precast Concrete Septic Tanks"}
  else if (files==="03410.pdf") {sDesc = "Plant-Precast Structural Concrete"}
  else if (files==="034100.pdf") {sDesc = "Precast Structural Concrete"}
  else if (files==="03420.pdf") {sDesc = "Plant-Precast Structural Post-Tensioned Concrete"}
  else if (files==="03430.pdf") {sDesc = "Site-Precast Structural Concrete"}
  else if (files==="03440.pdf") {sDesc = "Precast Concrete Manholes"}
  else if (files==="03450.pdf") {sDesc = "Plant-Precast Architectural Concrete"}
  else if (files==="034500.pdf") {sDesc = "Precast Architectural Wall Panels"}
  else if (files==="03451.pdf") {sDesc = "Architectural Precast Concrete"}
  else if (files==="03460.pdf") {sDesc = "Site-Precast Architectural Concrete"}
  else if (files==="03470.pdf") {sDesc = "Tilt-Up Precast Concrete"}
  else if (files==="03480.pdf") {sDesc = "Precast Concrete Specialties"}
  else if (files==="034800.pdf") {sDesc = "Precast Concrete Specialties"}
  else if (files==="03490.pdf") {sDesc = "Glass-Fiber-Reinforced Precast Concrete"}
  else if (files==="03500.pdf") {sDesc = "Cementitious Decks and Underlayment"}
  else if (files==="03510.pdf") {sDesc = "Cementitious Roof Deck"}
  else if (files==="03520.pdf") {sDesc = "Lightweight Concrete Roof Insulation"}
  else if (files==="03530.pdf") {sDesc = "Concrete Topping"}
  else if (files==="035300.pdf") {sDesc = "Concrete Topping"}
  else if (files==="03540.pdf") {sDesc = "Cementitious Underlayment"}
  else if (files==="035400.pdf") {sDesc = "Cementitious Underlayment"}
  else if (files==="035413.pdf") {sDesc = "Gypsum Cement Underlayment"}
  else if (files==="035416.pdf") {sDesc = "Gypsum Cement Underlayment"}
  else if (files==="033562.pdf") {sDesc = "Ground Concrete Floor Finish"}
  else if (files==="034116.pdf") {sDesc = "Precast Structural Concrete"}
  else if (files==="03600.pdf") {sDesc = "Grout"}
  else if (files==="036100.pdf") {sDesc = "Non Metallic Grout"}
  else if (files==="036220.pdf") {sDesc = "Non Shrink Grout"}
  else if (files==="03700.pdf") {sDesc = "Mass Concrete"}
  else if (files==="038110.pdf") {sDesc = "Concrete Removal"}
  else if (files==="03900.pdf") {sDesc = "Concrete Restoration and Cleaning"}
  else if (files==="03910.pdf") {sDesc = "Concrete Cleaning"}
  else if (files==="03920.pdf") {sDesc = "Concrete Resurfacing"}
  else if (files==="03930.pdf") {sDesc = "Concrete Rehabilitation"}
  else if (files==="040110.pdf") {sDesc = "Unit Masonry Cleaning"}
  else if (files==="040110.71.pdf") {sDesc = "Dumbwaiter Rehabilitation"}
  else if (files==="040120.63.pdf") {sDesc = "Brick Masonry Repair"}
  else if (files==="040120.71.pdf") {sDesc = "Elevator Rehabilitation"}
  else if (files==="040130.71.pdf") {sDesc = "Escalators and Moving Walks Rehabilitation"}
  else if (files==="040140.pdf") {sDesc = "Maintenance of Stone Assemblies"}
  else if (files==="040140.71.pdf") {sDesc = "Lifts Rehabilitation"}
  else if (files==="04050.pdf") {sDesc = "Basic Masonry Materials and Methods"}
  else if (files==="040503.pdf") {sDesc = "Masonry Mortaring and Grouting"}
  else if (files==="040513.pdf") {sDesc = "Cement nad Lime Masonry Mortaring"}
  else if (files==="040516.pdf") {sDesc = "Masonry Grouting"}
  else if (files==="040521.pdf") {sDesc = "Masonry Veneer Ties"}
  else if (files==="040523.pdf") {sDesc = "Masonry Accessories"}
  else if (files==="04060.pdf") {sDesc = "Masonry Mortar"}
  else if (files==="04070.pdf") {sDesc = "Masonry Grout"}
  else if (files==="04080.pdf") {sDesc = "Masonry Anchorage and Reinforcement"}
  else if (files==="04090.pdf") {sDesc = "Masonry Accessories"}
  else if (files==="04200.pdf") {sDesc = "Masonry Unit"}
  else if (files==="042000.pdf") {sDesc = "Unit Masonry"}
  else if (files==="042001.pdf") {sDesc = "Masonry Veneer"}
  else if (files==="042002.pdf") {sDesc = "Single Wythe Unit Masonry"}
  else if (files==="042010.pdf") {sDesc = "Reinforced Unit Masonry"}
  else if (files==="042019.pdf") {sDesc = "Veneer Unit Masonry"}
  else if (files==="04210.pdf") {sDesc = "Clay Masonry Unit"}
  else if (files==="042113.pdf") {sDesc = "Brick Masonry"}
  else if (files==="04220.pdf") {sDesc = "Concrete Masonry Unit"}
  else if (files==="042200.pdf") {sDesc = "Concrete Masonry Units"}
  else if (files==="042210.pdf") {sDesc = "Masonry Testing and Inspection Services"}
  else if (files==="04230.pdf") {sDesc = "Calcium Silicate Units Masonry"}
  else if (files==="042300.pdf") {sDesc = "Glass Unit Masonry"}
  else if (files==="042400.pdf") {sDesc = "Anchored Brick Veneer Units"}
  else if (files==="042613.pdf") {sDesc = "Masonry Veneer"}
  else if (files==="042616.pdf") {sDesc = "Adhered Masonry Veneer"}
  else if (files==="04270.pdf") {sDesc = "Glass Masonry Unit"}
  else if (files==="042731.pdf") {sDesc = "Reinforced Unit Masonry"}
  else if (files==="04290.pdf") {sDesc = "Adobe Masonry Unit"}
  else if (files==="04400.pdf") {sDesc = "Stone"}
  else if (files==="04410.pdf") {sDesc = "Stone Materials"}
  else if (files==="04420.pdf") {sDesc = "Collected Stone"}
  else if (files==="04430.pdf") {sDesc = "Quarried Stone"}
  else if (files==="044300.pdf") {sDesc = "Stone Masonry"}
  else if (files==="044301.pdf") {sDesc = "Stone Masonry Veneer"}
  else if (files==="044313.13.pdf") {sDesc = "Anchored Stone Masonry Veneer"}
  else if (files==="04500.pdf") {sDesc = "Refractories"}
  else if (files==="04550.pdf") {sDesc = "Flue Liner"}
  else if (files==="04560.pdf") {sDesc = "Combustion Chamber"}
  else if (files==="04570.pdf") {sDesc = "Castable Refractories"}
  else if (files==="04580.pdf") {sDesc = "Refractory Brick"}
  else if (files==="04600.pdf") {sDesc = "Corrosion-Resistant Masonry"}
  else if (files==="04610.pdf") {sDesc = "Chemical-Resistant Brick"}
  else if (files==="04620.pdf") {sDesc = "Vitrified Clay Liner Plate"}
  else if (files==="04700.pdf") {sDesc = "Simulted Masonry"}
  else if (files==="047000.pdf") {sDesc = "Manufactured Stone"}
  else if (files==="04710.pdf") {sDesc = "Simulated Brick"}
  else if (files==="04720.pdf") {sDesc = "Cast Stone"}
  else if (files==="047200.pdf") {sDesc = "Cast Stone Masonry"}
  else if (files==="04730.pdf") {sDesc = "Simulated Stone"}
  else if (files==="047300.pdf") {sDesc = "Simulated Stone"}
  else if (files==="04800.pdf") {sDesc = "Masonry Assemblies"}
  else if (files==="04810.pdf") {sDesc = "Unit Masonry Assemblies"}
  else if (files==="048100.pdf") {sDesc = "Unit Masonry Precast Conc Sill"}

   else {sDesc = ""}
console.log(files + sDesc);
}
%>

1 Ответ

0 голосов
/ 11 мая 2018

Я хотел бы рассмотреть базу данных для такого рода данных. Однако, если вы решите не делать этого, мы все равно сможем сделать это довольно легко. Вы захотите создать «объект отображения», в котором хранятся данные, а затем просмотреть их, а не создавать гигантские серии операторов if. Вот невероятно простой пример с небольшим количеством данных, этот подход использует массив и a для каждого цикла для поиска данных.

var mapper = [
  {
    fileName: '000001.pdf',
    description: 'Title Page'
  },
  {
    fileName: '00001.pdf',
    description: 'Project Title Page'
  },
  {
    fileName: '00350.pdf',
    description: 'Project Financial Information'
  }
];

function processFile(file) {
  var sDesc = '';

  // This really is not the most efficient way, but it is the simplest
  // to understand. Really you probably want to use the .find function
  // here instead. Or any other optimisation.
  mapper.forEach(function(mapping) {
    if (file.name === mapping.fileName) {
      sDesc = description;
    }
  });

  return sDesc;
}

В этом случае мы храним все данные (сопоставление имени файла с описанием) в массиве. Затем, когда мы обрабатываем файл, мы перебираем этот массив, чтобы найти необходимую нам информацию, и затем можем действовать оттуда. Затем вы можете использовать эту функцию processFile в другом месте. Например, вы можете обработать несколько файлов, поэтому, используя описанное выше, мы можем сделать это.

function processAllFiles(fileCollection) {
  // Again here, we would probably use a map function but
  // for simplicity lets go with a simple to understand loop.
  fileCollection.forEach(function(file) {
    var fileDescription = processFile(file);

    // Do something with this fileDescription...
  });
}

Есть много других способов сделать это, которые делают это еще проще. Во-первых, это использовать базу данных, где вы можете указать базе данных «найди мне описание для имени файла X», и она сразу же выведет ее для вас. Это идеально, если ваши данные будут расти со временем или будут большими с самого начала.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...