課程
/前端開發
/JavaScript
/JavaScript進階篇
function add2(x,y){ ? sum = x + y; ? document.write(sum);}
2017-05-24
源自:JavaScript進階篇 5-4
正在回答
如果生聲明了,那么他的作用域就是當前的方法,沒有聲明。系統也會自動聲明。作用域是全局
參數是不用聲明的
各位大神,能不能直接告訴我,如果要聲明,該怎樣寫;即不能用var,那要用什么呢?謝謝了,還有,謝謝前面回答的各位,感謝你們的熱心回答我的愚問。
不知道我這樣是否講明白了?
function函數里面的參數只要寫好是什么名字,參數本身是外面傳進來的,在()里面寫,只是外部引用,在內部使用的時候重新命名而已。再加var的話就等于是重新定義了,和原來的“引用”的本意不符。?因為是js語言是弱類型,而函數調用的時候一定要指定類型調用。在弱類型下面,引用的話就可以繼承原來被調用對象的類型。用C語言的解釋就是,你如果被調用的對象是int a型,而你定義函數的時候用了(float a);那么必然報錯。弱類型為了避免這類的錯誤就不能在函數里面寫var。你如果知道你被調用的對象是什么類型,那么你可以在里面直接指定類型。但是不能用var這樣不定的聲明方式。
就相當于數學的方程式,這個比喻應該可以把QWQ
木槿111 提問者
我要SSR 回復 木槿111 提問者
function add3(var x,var y,var z) ? ? ? ? ? ? ? ?
{
?sum = x + y +z;
?document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>");
}
既然可以聲明,為什么這樣子卻運行不了呢。完整代碼如下:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>函數傳參</title>
<script type="text/JavaScript">
? ?function add3(var x,var y,var z) ? ? ? ? ? ? ? ?
add3(5,8,3);
add3(7,1,4);
</script>
</head>
<body>
</body>
</html>
我要SSR
木槿111 提問者 回復 我要SSR
參數可以不用申明的,但在使用變量時為了更加清晰使用的類型,所以一般會申明,函數中的參數可以申明?在JavaScript中可以不用申明的 因為所以類型都是通過var創建的!
在JavaScript中變量,參數都是可以不用申明的,但在使用變量時為了更加清晰,所以一般會申明,函數中的參數可以申明,也可不用
舉報
本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界
3 回答關于參數聲明
2 回答函數參數是否需要聲明
3 回答請問函數參數需不需要var聲明?
2 回答函數傳參變量的聲明
5 回答函數中的變量不用聲明?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-07-11
如果生聲明了,那么他的作用域就是當前的方法,沒有聲明。系統也會自動聲明。作用域是全局
2017-07-11
參數是不用聲明的
2017-06-02
各位大神,能不能直接告訴我,如果要聲明,該怎樣寫;即不能用var,那要用什么呢?謝謝了,還有,謝謝前面回答的各位,感謝你們的熱心回答我的愚問。
2017-05-28
不知道我這樣是否講明白了?
2017-05-28
function函數里面的參數只要寫好是什么名字,參數本身是外面傳進來的,在()里面寫,只是外部引用,在內部使用的時候重新命名而已。再加var的話就等于是重新定義了,和原來的“引用”的本意不符。?因為是js語言是弱類型,而函數調用的時候一定要指定類型調用。在弱類型下面,引用的話就可以繼承原來被調用對象的類型。用C語言的解釋就是,你如果被調用的對象是int a型,而你定義函數的時候用了(float a);那么必然報錯。弱類型為了避免這類的錯誤就不能在函數里面寫var。你如果知道你被調用的對象是什么類型,那么你可以在里面直接指定類型。但是不能用var這樣不定的聲明方式。
2017-05-26
2017-05-24
function add3(var x,var y,var z) ? ? ? ? ? ? ? ?
{
?sum = x + y +z;
?document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>");
}
既然可以聲明,為什么這樣子卻運行不了呢。完整代碼如下:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>函數傳參</title>
<script type="text/JavaScript">
? ?function add3(var x,var y,var z) ? ? ? ? ? ? ? ?
{
?sum = x + y +z;
?document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>");
}
add3(5,8,3);
add3(7,1,4);
</script>
</head>
<body>
</body>
</html>
2017-05-24
參數可以不用申明的,但在使用變量時為了更加清晰使用的類型,所以一般會申明,函數中的參數可以申明?在JavaScript中可以不用申明的 因為所以類型都是通過var創建的!
2017-05-24
在JavaScript中變量,參數都是可以不用申明的,但在使用變量時為了更加清晰,所以一般會申明,函數中的參數可以申明,也可不用