Ⅰ 在js中局部函數可以訪問外部函數的局部變數嗎
很簡單,你不需要在函數裡面申明一個局部變數,直接申請static變數。這個是靜態文件作用域變數。任何函數都可以訪問。但是你必須要寫到所有函數外部定義。很簡單的事,不要太復雜化
Ⅱ js內部函數對外部變數的訪問
i在循環後的最終值是2 即點擊p之前i已經變成2了
而items[2]是不存在的 因為只有2個p
改成alert(this.nodeValue);就好了
或者用閉包也可以
for(var i=0; i<items.length; i++) {
(function(item){
item.onclick = function(){ alert(item.nodeValue) ; };
})(item[i]);
}
Ⅲ js 內部函數訪問外部函數公共變數
話是這么說沒錯,不過你要明白js的作用域才行。js沒有塊作用域,只有函數作用域,就是說一個函數內部是一個作用域,如果它包含在其它函數內,那麼它可以用外部的變數,但是外部不能用它的變數;簡單的說嵌套的函數里,作用域也還是嵌套的。
name2未定義,這個很明顯,就不說了;this.getInner很明顯在this.innerFunc外部,當然不能利用裡面的函數的變數,好吧,我感覺這個也很明顯;你確定你訪問的是外部函數的成員嗎?
Ⅳ if結構里的變數要怎麼被結構外的變數使用,新手求助!
因為你設的C是在if語句中設的,是局部變數,在if語句外面沒有設,它只在if語句中有效,在外面無效,所以在最後一句console.write("結果為{0}",c);系統找不到C。
你可以試一下把 console.write("結果為{0}",c); 這條語句放在if{}和else{}中,刪除外面的這句,就不會報錯了。
Ⅳ php if語句中定義的變數在if外面無法使用
你變數寫錯了 最後一行是 $firends
而你的第三步是 $friends
仔細對照一下是否一樣
Ⅵ js怎麼把函數裡面的變數能在外面使用
定義一個全局變數接收數值
var x;
function you(){
var y=9;
x=y;
return y;
}
Ⅶ java中怎麼使在if裡面定義的變數在if之外也可以調用
java的變數是有作用范圍的,變數的作用域,在這范圍之外無法被調用。想在if外面能用,那麼就把它先定義在if之前咯。
Ⅷ javascript,函數內定義的全局變數函數外能訪問到嗎
就是1啊
內部是內部的,外部是外部的
塊作用域
Ⅸ 初學js,一個很簡單的問題,為什麼函數外訪問不到函數內的全局變數
原因如下:
1、函數裡面的變數不是全局變數,函數內部聲明的變數一定是局部變數,所以想要外部訪問是無法直接訪問到的,請規范全局變數和局部變數的定義。
2、外部想要訪問函數內的變數可以採用閉包來實現,代碼實例如下:
functiontest(){
varx=10;
returnfunction(){
returnx;
}
}
//調用局部變數x,報錯未定義
alert(x);
//調用
vara=test();
alert(a());
這樣可以實現外部訪問內部變數。
Ⅹ JS中在函數內部定義的變數在函數外面訪問不到,可是為什麼會出現這樣的情況呢
你好!Chrome/Firefox/Safari下的console工具欄測試都是undefined哦