Fecha y hora actual: Domingo 25 Feb 2018 03:08
Índice del Foro

Foros de programación informática, diseño gráfico y Web

En esta comunidad intentaremos dar soporte de programación a todos los niveles, desde principiantes a profesionales de la informática, desarrollo de programas, programación web y mucho más.

SIMPLIFICANDO CODIGO

Responder al Tema

Índice del Foro > JavaScript > SIMPLIFICANDO CODIGO

Autor Mensaje
JESYMCA



Registrado: 20 Ene 2018
Mensajes: 4
Ubicación: Maracay - Venezuela

Mensaje Publicado: Sábado 20 Ene 2018 23:00

Título del mensaje: SIMPLIFICANDO CODIGO

Responder citando

Saludos chicos tengo un desarrollo de un aplicativo que funciona perfectamente, pero deseo simplificar codigo y por mas que he leido sobre los ciclos, y sobre arrays de objetos no logro comprender como debo generar las ordenes, dejare lo que tengo funcionando y luego explico las modificaciones que me gustaria implementar a ver si pueden orientarme.

el html
Código:
  1.  
  2. <!DOCTYPE html>
  3. <meta HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8">
  4. <meta name="language" content="es">
  5. <meta name="content-language" content="es">
  6. <meta name="author" content="jesuministrosymas" >
  7. <title>PRODUCTO PRUEBA</title>
  8. <link href="../css/estilos.css" type="text/css" rel="stylesheet">
  9. <script type="text/javascript" src="../librerias/calculos.js"></script>
  10. <!-- Latest compiled and minified CSS -->
  11. <link rel="stylesheet" type="text/css" href="../bootstrap/css/bootstrap.min.css">
  12. <!-- Optional theme -->
  13. <link rel="stylesheet" type="text/css" href="../bootstrap/css/bootstrap-theme.min.css">
  14. </head>
  15. <body class="clase1">
  16. <div class="container">
  17. <h1 id='formula'>PRUEBA ENTRADA</h1>
  18. <div align="right"><a href='javascript&#058;window.print(); void 0;'><button type="button" class="btn btn-danger btn-primary btn-lg">Imprimir <span class="glyphicon glyphicon-print" aria-hidden="true"></button></a></div><br>
  19. <table class="clase2"><tr><td>
  20. Indique la cantidad de Litros a Procesar<br><br>
  21. <form class="form-inline"><div class="form-group"><input class="form-control" placeholder="Cantidad en Litros" id="entrada" onkeyup="validarSiNumero(this.value);"/></div>
  22. </form>
  23.  
  24. <div class="clase1" id='salida'></div>
  25. </td></tr></table>
  26. <div class="clase2" id='procedimiento'></div>
  27. </div>
  28. </body>
  29. </html>
  30.  


el codigo de calculo.js

Código:
  1.  
  2. function entrada(){
  3. if(UI=document.getElementById('entradaDetergenteRopa')){detergente();}
  4. else if(UI=document.getElementById('entrada')) {prueba();}
  5. else if(UI=document.getElementById('entradaSuavizanteTelas')) {suavizanteTelas();}
  6. else if(UI=document.getElementById('entradaShampooPertPlus')) {shampooPertPlus();}
  7. //else if(UI=document.getElementById('entrada')){ ();}
  8. //else if(UI=document.getElementById('entrada')){ ();}
  9. //else if(UI=document.getElementById('entrada')){ ();}
  10. //else if(UI=document.getElementById('entrada')){ ();}
  11. //else if(UI=document.getElementById('entrada')){ ();}
  12. //else if(UI=document.getElementById('entrada')){ ();}
  13. else if(UI=document.getElementById('entradaBaseShampoo')) {baseShampoo();}
  14. }
  15.  
  16.  
  17. // AQUI SE DEBEN DECLARAR TODAS LAS VARIABLES A SER UTILIZADAS
  18. // n: NOMBRE v: VALOR t:TIPO (liq=LIQUIDO sol=SOLIDO)
  19.  
  20.  
  21.  
  22. agu = {n: 'Agua H2O = ', v: 0, t: 'liq'};
  23. texa = {n: 'Texapon = ', v: 0, t: "sol"};
  24. alcet = {n: 'Alcohol Cetilico - CH3 (CH2)15OH = ', v: 0, t: "liq"};
  25. aceric = {n: 'Aceite de Ricino = ', v: 0, t: "liq"};
  26. acemin = {n: 'Aceite Mineral = ', v: 0, t: "liq"};
  27. // = {n: '', v: 0, t: "liq"};
  28. // = {n: '', v: 0, t: "liq"};
  29. // = {n: '', v: 0, t: "liq"};
  30. // = {n: '', v: 0, t: "liq"};
  31. // = {n: '', v: 0, t: "liq"};
  32.  
  33.  
  34.  
  35.  
  36. a="1.- ";
  37. b="2.- ";
  38. c="3.- ";
  39. d="4.- ";
  40. e="5.- ";
  41. f="6.- ";
  42. g="7.- ";
  43. h="8.- ";
  44. i="9.- ";
  45. j="10.- ";
  46. k="11.- ";
  47. l="12.- ";
  48. m="13.- ";
  49. n="14.- ";
  50. o="15.- ";
  51.  
  52. br="<br>";
  53. ml=" Mililitros";
  54. li=" Litros";
  55. gr=" Gramos";
  56. mg=" Miligramos";
  57. kl=" Kilogramos";
  58.  
  59. tca="Para hacer ";
  60. tcc=" se requieren:"
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67. // ESTA FUNCION LE DA UN TRATAMIENTO A TODA VARIABLE QUE SEA LIQUIDA CON UN IF
  68. function liquido(UI){
  69. if (UI<=1){
  70. tcbl=" Litro de ";
  71. agu.v = (agu.v*1000).toFixed(2)+ml;
  72. alcet.v = (alcet.v*1000).toFixed(2)+ml;
  73. aceric.v = (aceric.v*1000).toFixed(2)+ml;
  74. aciace.v = (aciace.v*1000).toFixed(2)+ml;
  75. col.v = (col.v*1000).toFixed(2)+ml;
  76. fra.v = (fra.v*1000).toFixed(2)+ml;
  77. chb.v = (chb.v*1000).toFixed(2)+ml;
  78. taa.v = (taa.v*1000).toFixed(2)+ml;
  79. gli.v = (gli.v*1000).toFixed(2)+ml;
  80. gena.v = (gena.v*1000).toFixed(2)+ml;
  81. creo.v = (creo.v*1000).toFixed(2)+ml;
  82. ami.v = (ami.v*1000).toFixed(2)+ml;
  83. dmt.v = (dmt.v*1000).toFixed(2)+ml;
  84. dpant.v = (dpant.v*1000).toFixed(2)+ml;
  85. non.v = (non.v*1000).toFixed(2)+ml;
  86. alc.v = (alc.v*1000).toFixed(2)+ml;
  87. hda.v = (hda.v*1000).toFixed(2)+ml;
  88. bcs.v = (bcs.v*1000).toFixed(2)+ml;
  89. alcdes.v = (alcdes.v*1000).toFixed(2)+ml;
  90. tri.v = (tri.v*1000).toFixed(2)+ml;
  91. hip.v = (hip.v*1000).toFixed(2)+ml;
  92. amo.v = (amo.v*1000).toFixed(2)+ml;
  93. form.v = (form.v*1000).toFixed(2)+ml;
  94. aci.v = (aci.v*1000).toFixed(2)+ml;
  95. dets.v = (dets.v*1000).toFixed(2) +ml;
  96. acepin.v = (acepin.v*1000).toFixed(2) +ml;
  97. acemin.v = (acemin.v*1000).toFixed(2)+ml;
  98. adt.v = (adt.v*1000).toFixed(2)+ml;
  99.  
  100.  
  101. //.v = (.v*1000).toFixed(2) +ml;
  102. //.v = (.v*1000).toFixed(2) +ml;
  103. //.v = (.v*1000).toFixed(2) +ml;
  104. //.v = (.v*1000).toFixed(2) +ml;
  105. //.v = (.v*1000).toFixed(2) +ml;
  106. //.v = (.v*1000).toFixed(2) +ml;
  107. //.v = (.v*1000).toFixed(2) +ml;
  108. //.v = (.v*1000).toFixed(2) +ml;
  109. //.v = (.v*1000).toFixed(2) +ml;
  110. //.v = (.v*1000).toFixed(2) +ml;
  111. //.v = (.v*1000).toFixed(2) +ml;
  112. //.v = (.v*1000).toFixed(2) +ml;
  113.  
  114.  
  115.  
  116.  
  117. }
  118. else {
  119. tcbl=" Litros de ";
  120. if (agu.v*1000>=1000){agu.v=(agu.v).toFixed(2)+li;}else{agu.v=(agu.v*1000).toFixed(2)+ml;};
  121. if (alcet.v*1000>=1000){alcet.v=(alcet.v).toFixed(2)+li;}else{alcet.v=(alcet.v*1000).toFixed(2)+ml;};
  122. if (aceric.v*1000>=1000){aceric.v=(aceric.v).toFixed(2)+li;}else{aceric.v=(aceric.v*1000).toFixed(2)+ml;};
  123. if (aciace.v*1000>=1000){aciace.v=(aciace.v).toFixed(2)+li;}else{aciace.v=(aciace.v*1000).toFixed(2)+ml;};
  124. if (col.v*1000>=1000){col.v=(col.v).toFixed(2)+li;}else{col.v=(col.v*1000).toFixed(2)+ml;};
  125. if (fra.v*1000>=1000){fra.v=(fra.v).toFixed(2)+li;}else{fra.v=(fra.v*1000).toFixed(2)+ml;};
  126. if (chb.v*1000>=1000){chb.v=(chb.v).toFixed(2)+li;}else{chb.v=(chb.v*1000).toFixed(2)+ml;};
  127. if (taa.v*1000>=1000){taa.v=(taa.v).toFixed(2)+li;}else{taa.v=(taa.v*1000).toFixed(2)+ml;};
  128. if (gli.v*1000>=1000){gli.v=(gli.v).toFixed(2)+li;}else{gli.v=(gli.v*1000).toFixed(2)+ml;};
  129. if (gena.v*1000>=1000){gena.v=(gena.v).toFixed(2)+li;}else{gena.v=(gena.v*1000).toFixed(2)+ml;};
  130. if (creo.v*1000>=1000){creo.v=(creo.v).toFixed(2)+li;}else{creo.v=(creo.v*1000).toFixed(2)+ml;};
  131. if (ami.v*1000>=1000){ami.v=(ami.v).toFixed(2)+li;}else{ami.v=(ami.v*1000).toFixed(2)+ml;};
  132. if (dmt.v*1000>=1000){dmt.v=(dmt.v).toFixed(2)+li;}else{dmt.v=(dmt.v*1000).toFixed(2)+ml;};
  133. if (dpant.v*1000>=1000){dpant.v=(dpant.v).toFixed(2)+li;}else{dpant.v=(dpant.v*1000).toFixed(2)+ml;};
  134. if (non.v*1000>=1000){non.v=(non.v).toFixed(2)+li;}else{non.v=(non.v*1000).toFixed(2)+ml;};
  135. if (alc.v*1000>=1000){alc.v=(alc.v).toFixed(2)+li;}else{alc.v=(alc.v*1000).toFixed(2)+ml;};
  136. if (hda.v*1000>=1000){hda.v=(hda.v).toFixed(2)+li;}else{hda.v=(hda.v*1000).toFixed(2)+ml;};
  137. if (bcs.v*1000>=1000){bcs.v=(bcs.v).toFixed(2)+li;}else{bcs.v=(bcs.v*1000).toFixed(2)+ml;};
  138. if (alcdes.v*1000>=1000){alcdes.v=(alcdes.v).toFixed(2)+li;}else{alcdes.v=(alcdes.v*1000).toFixed(2)+ml;};
  139. if (tri.v*1000>=1000){tri.v=(tri.v).toFixed(2)+li;}else{tri.v=(tri.v*1000).toFixed(2)+ml;};
  140. if (hip.v*1000>=1000){hip.v=(hip.v).toFixed(2)+li;}else{hip.v=(hip.v*1000).toFixed(2)+ml;};
  141. if (amo.v*1000>=1000){amo.v=(amo.v).toFixed(2)+li;}else{amo.v=(amo.v*1000).toFixed(2)+ml;};
  142. if (form.v*1000>=1000){form.v=(form.v).toFixed(2)+li;}else{form.v=(form.v*1000).toFixed(2)+ml;};
  143. if (aci.v*1000>=1000){aci.v=(aci.v).toFixed(2)+li;}else{aci.v=(aci.v*1000).toFixed(2)+ml;};
  144. if (dets.v*1000>=1000){dets.v=(dets.v).toFixed(2)+li;}else{dets.v=(dets.v*1000).toFixed(2)+ml;};
  145. if (acepin.v*1000>=1000){acepin.v=(acepin.v).toFixed(2)+li;}else{acepin.v=(acepin.v*1000).toFixed(2)+ml;};
  146. if (acemin.v * 1000>=1000){acemin.v=(acemin.v).toFixed(2)+li;}else{acemin.v=(acemin.v*1000).toFixed(2)+ml;};
  147. if (adt.v * 1000>=1000){adt.v=(adt.v).toFixed(2)+li;}else{adt.v=(adt.v*1000).toFixed(2)+ml;};
  148.  
  149.  
  150. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  151. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  152. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  153. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  154. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  155. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  156. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  157. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  158. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  159. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  160. //if (.v*1000>=1000){.v=(.v).toFixed(2)+li;}else{.v=(.v*1000).toFixed(2)+ml;};
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167. }
  168. }
  169.  
  170.  
  171.  
  172. // ESTA FUNCION LE DA UN TRATAMIENTO A TODA VARIABLE QUE SEA SOLIDA CON UN IF
  173. function solido(UI){
  174. if (UI<=1){
  175. tcbs=" Kilo de ";
  176. texa.v = (texa.v*1000).toFixed(2)+gr;
  177. cmc.v = (cmc.v*1000).toFixed(2)+gr;
  178. sal.v = (sal.v*1000).toFixed(2)+gr;
  179. cvp.v = (cvp.v*1000).toFixed(2)+gr;
  180. ve.v = (ve.v*1000).toFixed(2)+gr;
  181. acas.v = (acas.v*1000).toFixed(2)+gr;
  182. eup.v = (eup.v*1000).toFixed(2)+gr;
  183. gna.v = (gna.v*1000).toFixed(2)+gr;
  184. carbo.v = (carbo.v*1000).toFixed(2)+gr;
  185. fos.v = (fos.v*1000).toFixed(2)+gr;
  186. car.v = (car.v*1000).toFixed(2)+gr;
  187. his.v = (his.v*1000).toFixed(2)+gr;
  188. comp.v = (comp.v*1000).toFixed(2)+gr;
  189. mpp.v = (mpp.v*1000).toFixed(2)+gr;
  190. mps.v = (mps.v*1000).toFixed(2)+gr;
  191. ac.v = (ac.v*1000).toFixed(2)+gr;
  192. ab.v = (ab.v*1000).toFixed(2)+gr;
  193. ckle.v = (ckle.v*1000).toFixed(2)+gr;
  194. tdp.v = (tdp.v*1000).toFixed(2)+gr;
  195. odz.v = (odz.v*1000).toFixed(2)+gr;
  196. alm.v = (alm.v*1000).toFixed(2)+gr;
  197. cda.v = (cda.v*1000).toFixed(2)+gr;
  198. vsa.v = (vsa.v*1000).toFixed(2)+gr;
  199. afo.v = (afo.v*1000).toFixed(2)+gr;
  200. hdt.v = (hdt.v*1000).toFixed(2)+gr;
  201. ccu.v = (ccu.v*1000).toFixed(2)+gr;
  202. psu.v = (psu.v*1000).toFixed(2)+gr;
  203. tal.v = (tal.v*1000).toFixed(2)+gr;
  204. pds.v = (pds.v*1000).toFixed(2)+gr;
  205. sds.v = (sds.v*1000).toFixed(2)+gr;
  206.  
  207.  
  208.  
  209.  
  210. //.v = (.v*1000).toFixed(2)+gr;
  211. //.v = (.v*1000).toFixed(2)+gr;
  212. //.v = (.v*1000).toFixed(2)+gr;
  213. //.v = (.v*1000).toFixed(2)+gr;
  214. //.v = (.v*1000).toFixed(2)+gr;
  215. //.v = (.v*1000).toFixed(2)+gr;
  216. //.v = (.v*1000).toFixed(2)+gr;
  217. //.v = (.v*1000).toFixed(2)+gr;
  218. //.v = (.v*1000).toFixed(2)+gr;
  219. //.v = (.v*1000).toFixed(2)+gr;
  220. //.v = (.v*1000).toFixed(2)+gr;
  221.  
  222.  
  223.  
  224. }
  225. else {
  226. tcbs=" Kilos de ";
  227. if (texa.v*1000>=1000){texa.v=(texa.v).toFixed(2)+kl;}else {texa.v=(texa.v*1000).toFixed(2)+gr;};
  228. if (cmc.v*1000>=1000){cmc.v=(cmc.v).toFixed(2)+kl;}else{cmc.v=(cmc.v*1000).toFixed(2)+gr;};
  229. if (sal.v*1000>=1000){sal.v=(sal.v).toFixed(2)+kl;}else{sal.v=(sal.v*1000).toFixed(2)+gr;};
  230. if (cvp.v*1000>=1000){cvp.v=(cvp.v).toFixed(2)+kl;}else{cvp.v=(cvp.v*1000).toFixed(2)+gr;};
  231. if (ve.v*1000>=1000){ve.v=(ve.v).toFixed(2)+kl;}else{ve.v=(ve.v*1000).toFixed(2)+gr;};
  232. if (acas.v*1000>=1000){acas.v=(acas.v).toFixed(2)+kl;}else{acas.v=(acas.v*1000).toFixed(2)+gr;};
  233. if (eup.v*1000>=1000){eup.v=(eup.v).toFixed(2)+kl;}else{eup.v=(eup.v*1000).toFixed(2)+gr;};
  234. if (gna.v*1000>=1000){gna.v=(gna.v).toFixed(2)+kl;}else{gna.v=(gna.v*1000).toFixed(2)+gr;};
  235. if (carbo.v*1000>=1000){carbo.v=(carbo.v).toFixed(2)+kl;}else{carbo.v=(carbo.v*1000).toFixed(2)+gr;};
  236. if (fos.v*1000>=1000){fos.v=(fos.v).toFixed(2)+kl;}else{fos.v=(fos.v*1000).toFixed(2)+gr;};
  237. if (car.v*1000>=1000){car.v=(car.v).toFixed(2)+kl;}else{car.v=(car.v*1000).toFixed(2)+gr;};
  238. if (his.v*1000>=1000){his.v=(his.v).toFixed(2)+kl;}else{his.v=(his.v*1000).toFixed(2)+gr;};
  239. if (comp.v*1000>=1000){comp.v=(comp.v).toFixed(2)+kl;}else{comp.v=(comp.v*1000).toFixed(2)+gr;};
  240. if (mpp.v*1000>=1000){mpp.v=(mpp.v).toFixed(2)+kl;}else{mpp.v=(mpp.v*1000).toFixed(2)+gr;};
  241. if (mps.v*1000>=1000){mps.v=(mps.v).toFixed(2)+kl;}else{mps.v=(mps.v*1000).toFixed(2)+gr;};
  242. if (ac.v*1000>=1000){ac.v=(ac.v).toFixed(2)+kl;}else{ac.v=(ac.v*1000).toFixed(2)+gr;};
  243. if (ab.v*1000>=1000){ab.v=(ab.v).toFixed(2)+kl;}else{ab.v=(ab.v*1000).toFixed(2)+gr;};
  244. if (tdp.v*1000>=1000){tdp.v=(tdp.v).toFixed(2)+kl;}else{tdp.v=(tdp.v*1000).toFixed(2)+gr;};
  245. if (ckle.v*1000>=1000){ckle.v=(ckle.v).toFixed(2)+kl;}else{ckle.v=(ckle.v*1000).toFixed(2)+gr;};
  246. if (odz.v * 1000>=1000){odz.v=(odz.v).toFixed(2)+kl;}else{odz.v=(odz.v*1000).toFixed(2)+gr;};
  247. if (alm.v * 1000>=1000){alm.v=(alm.v).toFixed(2)+kl;}else{alm.v=(alm.v*1000).toFixed(2)+gr;};
  248. if (cda.v * 1000>=1000){cda.v=(cda.v).toFixed(2)+kl;}else{cda.v=(cda.v*1000).toFixed(2)+gr;};
  249. if (vsa.v * 1000>=1000){vsa.v=(vsa.v).toFixed(2)+kl;}else{vsa.v=(vsa.v*1000).toFixed(2)+gr;};
  250. if (afo.v * 1000>=1000){afo.v=(afo.v).toFixed(2)+kl;}else{afo.v=(afo.v*1000).toFixed(2)+gr;};
  251. if (hdt.v * 1000>=1000){hdt.v=(hdt.v).toFixed(2)+kl;}else{hdt.v=(hdt.v*1000).toFixed(2)+gr;};
  252. if (ccu.v * 1000>=1000){ccu.v=(ccu.v).toFixed(2)+kl;}else{ccu.v=(ccu.v*1000).toFixed(2)+gr;};
  253. if (psu.v * 1000>=1000){psu.v=(psu.v).toFixed(2)+kl;}else{psu.v=(psu.v*1000).toFixed(2)+gr;};
  254. if (tal.v * 1000>=1000){tal.v=(tal.v).toFixed(2)+kl;}else{tal.v=(tal.v*1000).toFixed(2)+gr;};
  255. if (pds.v * 1000>=1000){pds.v=(pds.v).toFixed(2)+kl;}else{pds.v=(pds.v*1000).toFixed(2)+gr;};
  256. if (sds.v * 1000>=1000){sds.v=(sds.v).toFixed(2)+kl;}else{sds.v=(sds.v*1000).toFixed(2)+gr;};
  257.  
  258.  
  259. //if (.v*1000>=1000){.v=(.v).toFixed(2)+kl;}else{.v=(.v*1000).toFixed(2)+gr;};
  260. //if (.v*1000>=1000){.v=(.v).toFixed(2)+kl;}else{.v=(.v*1000).toFixed(2)+gr;};
  261. //if (.v*1000>=1000){.v=(.v).toFixed(2)+kl;}else{.v=(.v*1000).toFixed(2)+gr;};
  262. //if (.v*1000>=1000){.v=(.v).toFixed(2)+kl;}else{.v=(.v*1000).toFixed(2)+gr;};
  263. //if (.v*1000>=1000){.v=(.v).toFixed(2)+kl;}else{.v=(.v*1000).toFixed(2)+gr;};
  264. //if (.v*1000>=1000){.v=(.v).toFixed(2)+kl;}else{.v=(.v*1000).toFixed(2)+gr;};
  265. //if (.v*1000>=1000){.v=(.v).toFixed(2)+kl;}else{.v=(.v*1000).toFixed(2)+gr;};
  266. //if (.v*1000>=1000){.v=(.v).toFixed(2)+kl;}else{.v=(.v*1000).toFixed(2)+gr;};
  267. //if (.v*1000>=1000){.v=(.v).toFixed(2)+kl;}else{.v=(.v*1000).toFixed(2)+gr;};
  268. //if (.v*1000>=1000){.v=(.v).toFixed(2)+kl;}else{.v=(.v*1000).toFixed(2)+gr;};
  269. }
  270. }
  271.  
  272. //FUNCION DE PRUEBA DE FUNCIONES Y APLICACION EN GENERAL
  273. function prueba() {
  274. var UI=document.getElementById('entradaPrueba').value;
  275. if(isNaN(UI)){return false;}
  276. producto = "Producto de Prueba de un SOLIDO";
  277. agu.v = UI*91.8/100;
  278. texa.v = UI*3/100;
  279. liquido(UI);
  280. solido(UI);
  281. resul =
  282. tca+UI+tcbl+producto+tcc+br+
  283. a+agu.n+agu.v+br+
  284. b+texa.n+texa.v+br;
  285.  
  286. var procedimiento="<h1>PROCEDIMIENTO:</h1> PRODUCTO DE PRUEBA";
  287.  
  288. document.getElementById('salida').innerHTML=resul,
  289. document.getElementById('procedimiento').innerHTML=procedimiento;
  290. }
  291.  
  292. function jabonEnPasta() {
  293. var UI=document.getElementById('entradaJabonEnPasta').value;
  294. if(isNaN(UI)){return false;}
  295. producto = "Jabon en Pasta Tipo Axion";
  296. psu.v = UI*15.8/100;
  297. agu.v = UI*9.8/100;
  298. tal.v = UI*45.33/100;
  299. pds.v = UI*11.86/100;
  300. sds.v = UI*25/100;
  301. col.v = UI*1.46/100;
  302. fra.v = UI*1.46/100;
  303.  
  304. liquido(UI);
  305. solido(UI);
  306. resul =
  307. tca+UI+tcbs+producto+tcc+br+
  308. a+psu.n+psu.v+br+
  309. b+agu.n+agu.v+br+
  310. c+tal.n+tal.v+br+
  311. d+pds.n+pds.v+br+
  312. e+sds.n+sds.v+br+
  313. f+col.n+col.v+br+
  314. g+fra.n+fra.v+br;
  315.  
  316. var procedimiento="<h1>PROCEDIMIENTO:</h1> Mezclar la Pasta Sulfonica con el Agua y cuando estén bien mezclado agregar el Talco Neutro previamente tamizado unas 3 veces para facilitar el trabajo de homogenizacion y continuar mezclando. Cuando este todo integrado agregar el Perborato de Sodio y el Sulfato de Sodio y por ultimo el Color y la Fragancia. <h2>Nota:</h2>Si desea que el producto sea más duro se triplica la cantidad de Sulfato de Sodio. <br>El Perborato además de conservante es suavizante <br>El Talco se debe cernir antes de mezclarlo para que sea mas fácil de mezclar y evitar cualquier elemento extraño presente.";
  317.  
  318. document.getElementById('salida').innerHTML=resul,
  319. document.getElementById('procedimiento').innerHTML=procedimiento;
  320. }
  321.  
  322.  
  323. function validarSiNumero(UI){
  324. if (!/^([0.1-9])*$/.test(UI)){
  325. //alert("El valor " + UI + " no es un número valido, intente utilizar numeros desde 0.1 hasta la cantidad de litros que usted desee fabricar");
  326. var alerta = "EL VALOR INDICADO: <b>" + UI + "</b> NO ES UN NUMERO VALIDO<br> INTENTE UTILIZAR NUMEROS DESDE 0.1 HASTA LA CANTIDAD DE PRODUCTO QUE USTED DESEE FABRICAR";
  327. document.getElementById('salida').innerHTML=
  328. alerta;
  329. }
  330. else if (UI==""){
  331. var nada = "NO HA ESCRITO NADA INTENTE UTILIZAR NUMEROS DESDE 0.1 HASTA LA CANTIDAD DE PRODUCTO QUE USTED DESEE FABRICAR";
  332. document.getElementById('salida').innerHTML=
  333. nada;}
  334. else if (UI==0){
  335. var nada = "CERO (0) NO ES UN NUMERO VALIDO INTENTE UTILIZAR NUMEROS DESDE 0.1 HASTA LA CANTIDAD DE PRODUCTO QUE USTED DESEE FABRICAR";
  336. document.getElementById('salida').innerHTML=
  337. nada;}
  338. else { entrada();
  339. }}
  340.  
  341.  


la simplificacion que he empezado a hacer es la siguiente:

Código:
  1.  
  2. function entrada(){
  3. if(UI=document.getElementById('entrada')) {eval( document.getElementById('formula').textContent.toLowerCase().replace(' ', '') + '()' );}
  4. }
  5.  
  6.  
  7. //VALIDAR SI VALOR INGRESADO ES VALIDO
  8. function validarSiNumero(UI){
  9. if (!/^([0.1-9])*$/.test(UI)){
  10. //alert("El valor " + UI + " no es un número valido, intente utilizar numeros desde 0.1 hasta la cantidad de litros que usted desee fabricar");
  11. var alerta = "EL VALOR INDICADO: <b>" + UI + "</b> NO ES UN NUMERO VALIDO<br> INTENTE UTILIZAR NUMEROS DESDE 0.1 HASTA LA CANTIDAD DE PRODUCTO QUE USTED DESEE FABRICAR";
  12. document.getElementById('salida').innerHTML=
  13. alerta;
  14. }
  15. else if (UI==""){
  16. var nada = "NO HA ESCRITO NADA INTENTE UTILIZAR NUMEROS DESDE 0.1 HASTA LA CANTIDAD DE PRODUCTO QUE USTED DESEE FABRICAR";
  17. document.getElementById('salida').innerHTML=
  18. nada;}
  19. else if (UI==0){
  20. var nada = "CERO (0) NO ES UN NUMERO VALIDO INTENTE UTILIZAR NUMEROS DESDE 0.1 HASTA LA CANTIDAD DE PRODUCTO QUE USTED DESEE FABRICAR";
  21. document.getElementById('salida').innerHTML=
  22. nada;}
  23. else { entrada();
  24. }}
  25.  
  26.  
  27. //DEFINIENDO VARIABLES GLOBALES
  28. ml = " Mililitros";
  29. li = " Litros";
  30. gr = " Gramos";
  31. mg = " Miligramos";
  32. kl = " Kilogramos";
  33.  
  34. tca = "Para hacer ";
  35. tcc = " se requieren:";
  36.  
  37.  
  38. // ARREGLO
  39. componente = new Array();
  40. /*
  41. a: Abreviacion Formula
  42. n: Nombre con espacio igual espacio ( = )
  43. v: valor inicial
  44. t: tipo de componente true para liq y false para sol
  45. */
  46. componente[0] = {a: "agu", n: 'Agua H2O = ', v: 0, t: "liq"};
  47. componente[1] = {a:"texa", n: 'Texapon = ', v: 0, t: "sol"};
  48. componente[2] = {a:"alcet", n: 'Alcohol Cetilico - CH3 (CH2)15OH = ', v: 0, t: "liq"};
  49. componente[3] = {a:"aceric", n: 'Aceite de Ricino = ', v: 0, t: "liq"};
  50. componente[4] = {a:"acemin", n: 'Aceite Mineral = ', v: 0, t: "liq"};
  51. //console.log(componente[4].n);
  52. //PRUEBA
  53. function pruebaentrada(){
  54. var UI=document.getElementById('entrada').value;
  55. if(isNaN(UI)){return false;}
  56. producto = "Producto de Prueba de un SOLIDO";
  57. componente[0].v = UI*91.8/100;
  58. componente[1].v = UI*3/100;
  59. liquido(UI);
  60. resul = "Se Requieren " + componente[0].v + "de " + componente[0].n + "</br>"+
  61. "Se Requieren " + componente[1].v + "de " + componente[1].n;
  62.  
  63. var procedimiento="<h1>PROCEDIMIENTO:</h1> PRODUCTO DE PRUEBA";
  64.  
  65. document.getElementById('salida').innerHTML=resul,
  66. document.getElementById('procedimiento').innerHTML=procedimiento;
  67. }
  68. // CICLO FOR
  69.  
  70. for (key in componente) {
  71. console.log(componente[4].n); //RESULTADO "Aceite Mineral ="
  72. console.log(componente[key].v); //RESULTADO 0 REPETIDO 5 VECES
  73. };
  74.  
  75. //DEFINIENDO FUNCION LIQUIDO SOLIDO IMPLEMENTAR SEGUN CORRESPONDA
  76. function liquido(UI){
  77. if (UI<=1){
  78. //tcbl=" Litro de ";
  79. componente[key].v = (componente[key].v*1000).toFixed(2)+ml;
  80. }
  81. else {
  82. // tcbl=" Litros de ";
  83. if (componente[key].v*1000>=1000){componente[key].v=(componente[key].v).toFixed(2)+li;}
  84. else {
  85. componente[key].v=(componente[key].v*1000).toFixed(2)+ml;};
  86. }
  87. }
  88.  


Es amplia y logicamente posible que yo este haciendo las cosas mal ya que no domino muy bien JS, la function entrada ya fue simplificada y perfectamente funciona con la logica aplicada que posiblemente no forma parte de las mejores practicas ya que las funciones en mi script ahora todas estarian escritas en minusculas pero si que simplifica la cantidad de codigo escrito, y acudo a la orientacion de este foro a ver si me pueden brindar orientacion sobre detalles que indico a continuacion:

Quisiera simplificar el tratamiento a componentes solidos y liquidos es decir tratar a los componentes segun su propiedad "t" que se refiere al tipo, eso para poder tratarlos como ml o gr o litros y kilos segun corresponda y asi la salida sea la correspondiente.

Asi mismo simplificar la logica del tratamiento de los arrays de objetos que en mi mente creo comprender pero al llevarlos al script no funciona.

Muchas gracias de antemano.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Responder al Tema
Mostrar mensajes anteriores:   
Ir a:  
Todas las horas están en GMT + 1 Hora

Temas relacionados

Tema Autor Foros Respuestas Publicado
El foro no contiene ningún mensaje nuevo

Duda codigo en Python - Red Neuronal con numpy ...

Daniel_wUNTG Python 1 Sábado 21 Oct 2017 21:27 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Personalizando @autor de cualquier código offt...

P3p3 Java 1 Miércoles 27 Sep 2017 23:04 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Un código para traducir en varios idiomas [jav...

P3p3 JavaScript 2 Lunes 12 Jun 2017 21:59 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Como seleccionar parte de un código de barras p...

falken0001 Visual Basic y VBA 0 Martes 20 Dic 2016 22:17 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Color celeste de clase en codigo asp.net c#

llogui C, C#, Visual C++ 0 Viernes 05 Ago 2016 01:56 Ver último mensaje
Panel de Control
No puede crear mensajes, No puede responder temas, No puede editar sus mensajes, No puede borrar sus mensajes, No puede votar en encuestas,