簡體   English   中英

JavaScript全局變量值對函數值的更改

[英]JavaScript Global variable value changes on Function value

為什么我從下面的代碼中得到兩個不同的結果。 我正在做的唯一更改是將值傳遞給函數,在第一個代碼中,我將全局變量“ count”的值設置為10,在第二個代碼中,全局變量(“ count”)值更改為30。

  function addTen(count) { count = count + 20; return count; } var count = 10 var result = addTen(count); console.log(count); //10 console.log(result); //30 

  function addTen(num) { count = num + 20; return count; } var count = 10 var result = addTen(count); console.log(count); //30 console.log(result); //30 

在第二個函數中,語句

count = num + 20;

分配給全局變量(這是作用域中的唯一count )。 要使其僅作為功能范圍的局部變量而不影響全局,請使用

var count = num + 20;

在第一個函數中,參數count隱式聲明了這樣的局部變量,從而遮蓋了同名的全局變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM