1 Replies - 272 Views - Last Post: 20 January 2012 - 04:50 AM

Topic Sponsor:

#1 menukadevinda  Icon User is offline

  • D.I.C Regular

Reputation: -7
  • View blog
  • Posts: 415
  • Joined: 14-April 11

java script setting var for variable

Posted 20 January 2012 - 04:17 AM

Hi all,

problem is when to use var for javascript.
I am new to javascript.

when a function is declared
function funcName(val)
{
}
here normally in other languages we set
function funcName(var val)
{
}

second one is followind code is working


<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
        
           <script type="text/javascript">
function updateOrder() {
const TAXRATE=.2;
const DONUTPRICE=10.50;
var numCakeDonuts = validate(document.getElementById("cakedonuts").value);

var numGlazedDonuts =parseInt(document.getElementById("glazeddonuts").value);
if (isNaN(numCakeDonuts))
numCakeDonuts = 0;
if (isNaN(numGlazedDonuts))
numGlazedDonuts = 0;
var subTotal = (numCakeDonuts + numGlazedDonuts) * DONUTPRICE;
var tax = subTotal * TAXRATE;
var total = subTotal + tax;
document.getElementById("subtotal").value = "$" + subTotal.toFixed(2);
document.getElementById("tax").value = "$" + tax.toFixed(2);
document.getElementById("total").value = "$" + total.toFixed(2);
}
function placeOrder() {
// Submit order to server...
form.submit();
}

        function validate(donutsstr)
        {
             donuts=  parseInt(donutsstr);
            
           if(donutsstr.indexOf("dozen")!=-1)
            {
                donuts*=12;
            }
            return donuts;
            
        }
       
</script>
        
    </head>
    <body>
        <div id="frame">

            <form name="orderform" action="donuts.php" method="POST">
              
                <div class="field">
                    # of cake donuts: <input type="text" id="cakedonuts" name="cakedonuts"
                                             value="" onkeyup="updateOrder();" />
                </div>
                <div class="field">
                    # of glazed donuts: <input type="text" id="glazeddonuts"
                                               name="glazeddonuts" value="" onkeyup="updateOrder();" />
                </div>
               
                <div class="field">
                    subtotal: <input type="text" id="subtotal" name="subtotal"
                                             value="" onkeyup="updateOrder();" />
                </div>
                <div class="field">
                    tax <input type="text" id="tax"
                                               name="tax" value="" onkeyup="updateOrder();" />
                </div>
                
                 <div class="field">
                    tax <input type="text" id="total"
                                               name="total" value="" onkeyup="updateOrder();" />
                </div>
                
                <div class="field">
                    <input type="submit" value="Place Order"
                           onclick="placeOrder(this.form);" />
                </div>
            </form>
        </div>

    </body>
</html>




but when I change following function like this it won't work
  function validate(donutsstr)
        {
             donuts=  parseInt(donutsstr);
            
           if(donutsstr.indexOf("dozen")!=-1)
            {
                donuts*=12;
            }
            return donuts;
            
        }




here is the problem code
  function validate(donutsstr)
        {
           var  donuts=  parseInt(donutsstr);
            
           if(donutsstr.indexOf("dozen")!=-1)
            {
                donuts*=12;
            }
            return donuts;
            
        }



declaring var donuts= parseInt(donutsstr);
will cause not to work the programme.

plz help me to figure when to use or not var in javascript


thx indavance.........

Is This A Good Question/Topic? 0
  • +

Replies To: java script setting var for variable

#2 Dormilich  Icon User is online

  • 痛覚残留
  • member icon

Reputation: 2145
  • View blog
  • Posts: 5,425
  • Joined: 08-June 10

Re: java script setting var for variable

Posted 20 January 2012 - 04:50 AM

View Postmenukadevinda, on 20 January 2012 - 12:17 PM, said:

when a function is declared
function funcName(val)
{
}
here normally in other languages we set
function funcName(var val)
{
}

normally those "other languages" are type-safe. but Javascript is a loosely typed language where a variable can change its data type at requirement.

View Postmenukadevinda, on 20 January 2012 - 12:17 PM, said:

  function validate(donutsstr)
        {
             donuts=  parseInt(donutsstr);
            
           if(donutsstr.indexOf("dozen")!=-1)
            {
                donuts*=12;
            }
            return donuts;
        }


here is the problem code
  function validate(donutsstr)
        {
           var  donuts=  parseInt(donutsstr);
            
           if(donutsstr.indexOf("dozen")!=-1)
            {
                donuts*=12;
            }
            return donuts;
        }

in code #1 donuts is a global variable, in code #2 it's local. and if donutsstr can't be parsed as integer, it returns NaN (not a number).

This post has been edited by Dormilich: 20 January 2012 - 04:51 AM

Was This Post Helpful? 1
  • +
  • -

Page 1 of 1