• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

146
Views
Estoy tratando de usar un ciclo while para tomar la entrada del usuario e insertarla en una matriz Javascript

Así que estoy tratando de tomar userResponse del indicador, convertirlo en un número entero, luego tomar esa respuesta y agregarla a mi total. Siempre que mi total sea inferior a 35, debería seguir en bucle. Una vez que el total de UserResponse haya llegado a 35, el userResponse debe insertarse en la matriz ShoppingCart y luego el bucle debe romperse y aparecer una alerta de que han alcanzado el umbral de 35. (por cierto, lo siento, soy nuevo en stackoverflow, disculpe mi novato).

 //==== VARIABLES ======== let shoppingCart = []; let shippingThreshhold = 35; let userResponse; let total; //==== LOGIC ======== //CHECK FOR ITEMS UNTIL THRESHOLD IS MET. while (total < shippingThreshhold){ //GET ITEM COST FROM USER let userResponse = prompt("What is the value of the item you have selected?"); //CONVERT USER INPUT TO A NUMBER userResponse.parseInt(); //ADD ITEM COST TO RUNNING TOTAL VARIABLE let total = shippingThreshhold - userResponse //PUSH ITEM COST TO CART ARRAY userResponse.concat(shoppingCart); } //SEND POPUP MESSAGE TO USER alert("Your shipping for this order will be free!");

almost 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Hay algunos problemas con su código:

  1. Necesitas inicializar el total
  2. No agrega el costo del artículo al total correctamente
  3. No analiza la respuesta del userResponse usando parseInt correctamente
  4. No empujas userResponse al carrito de shoppingCart correctamente
  5. No hay razón para declarar userResponse globalmente.

Algunas mejoras que también podrías hacer:

  1. No es necesario almacenar el total , ya que puede usar el carrito de shoppingCart para calcularlo (pero mantuve el total para que sea más simple).
  2. Muestre al usuario su carrito tanto a medida que avanza como al final.
  3. Dé formato a la constante shippingThreshold usando un formato de nomenclatura convencional para constantes (todas en mayúsculas separadas por guiones bajos).
  4. Use const en lugar de let cuando sea posible, para evitar sobrescribir involuntariamente los valores de las variables.
  5. Manejar casos extremos.

 //==== VARIABLES ======== const shoppingCart = []; const SHIPPING_THRESHOLD = 35; let total = 0; //==== LOGIC ======== //CHECK FOR ITEMS UNTIL THRESHOLD IS MET. while (total < SHIPPING_THRESHOLD) { //GET ITEM COST FROM USER const userResponse = prompt(`Your cart: ${shoppingCart.length ? shoppingCart : 'empty' }. What is the value of the item you have selected?`); if (userResponse === null) { break } else { //CONVERT USER INPUT TO A NUMBER const itemCost = parseInt(userResponse); if (Number.isNaN(itemCost)) { alert(`"${userResponse}" is not a number please try again or press cancel to exit.`) } else { // ADD TO TOTAL total += itemCost //PUSH ITEM COST TO CART ARRAY shoppingCart.push(itemCost); } } } //SEND POPUP MESSAGE TO USER if (total >= SHIPPING_THRESHOLD) { alert(`Your shipping for this order will be free! Your cart: ${shoppingCart}`); } else { alert("Thanks for visiting!") }

almost 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error