日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

HTML-JS 循环 函数 递归

發布時間:2024/1/17 HTML 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HTML-JS 循环 函数 递归 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【循環結構的執行步驟】
1、聲明循環變量
2、判斷循環條件
3、執行循環體操作
4、更新循環變量
然后,循環執行2-4,直到條件不成立時,跳出循環。
while循環()中的表達式,運算結果可以是各種類型,但是最終都會轉化為真假
轉化規則同if結構。

while循環特點:先判斷,再執行。
do-while循環特點:先執行,再判斷;即使初始條件不成立,do-while循環也至少執行一次。

// var num=1;//1、聲明循環變量
// while (num<=10){//2、判斷循環條件
// document.write(num+"<br />");//3、執行循環體操作
// num++;//4、更新循環變量
// }

【for循環】
1、for循環有三個表達式:①聲明循環變量;②判斷循環條件;③ 更新循環變量。
三個表達式之間用;分隔;
for循環三個表達式都可以省略,但是兩個;缺一不可。

2、for循環的執行特點:先判斷,再執行。與while相同。
3、for循環三個表達式,都可以有多部分組成。第二部分多個判斷條件用&& || 連接,
第一三部分,用,分隔。


[循環控制語句]
?1、break:跳出本層循環,繼續執行循環后面的語句。
?如果循環有多層嵌套,則break只能跳出一層。
?2、continue:跳過本次循環剩余的代碼,繼續執行下一次循環。
?① 對于for循環,continue之后執行的語句,是循環變量更新語句i++
?② 對于while do-while循環,continue之后執行的語句,是循環條件判斷。
?因此,使用這兩個循環時,必須將continue放到i++之后使用。否則,continue將* 跳過i++導致死循環。

例題:

輸入N個數,實現從1加到N


var count = prompt("請輸入整數個數:");var i = 0;var sum = 0;while (i<count){var num = parseInt(prompt("請輸入第"+(i+1)+"整數:"));if(i==count-1) document.write(num+"=");else document.write(num+"+");sum += num;i++;}document.write(sum);

  求斐波那契數列

var a=1;var b=1;var c=a+b;document.write("1 "+1+" ");for (var i=1;i<18;i++) {a=b;b=c;c=a+b;if ((i+2)%5==0&&(i+2)!=0) {document.write(c+"<br />");}else{document.write(c+" ");}}

【函數的聲明及調用】
1、函數的聲明格式:
function 函數名(參數1,參數2,...){
//函數體代碼
return 返回值;
}
函數的調用
① 直接調用:函數名(參數1的值,參數2的值,....);
② 事件調用方式:直接在HTML標簽中,使用事件名="函數()"
<button οnmοuseοut="SaySth('你好啊','red')">點擊按鈕,打印內容</button>
2、函數的注意事項
① 函數名必須要符合小駝峰法則,首字母小寫之后每個單詞首字母大寫 ;
② 函數名后面的括號中可以有參數,也可以沒有參數,分別稱為有參函數和無參函數;
③ 聲明函數時的參數列表稱為形參列表,形式參數。(變量的名字);
function saySth(str,color){}
調用函數時的參數列表,稱為實參列表,實際參數。(變量的賦值);
saySth("你好","red");
④ 函數的形參列表個數與實參列表個數沒有實際關聯關系。
函數參數的個數,取決于實參列表
如果實參列表的個數<形參列表,則未賦值的形參,將為Undefind。
⑤ 函數可以有返回值,使用return返回結果,調用函數時,可以使用一個變量接收函數的返回結果。
如果函數沒有返回值,則接收的結果為Undefined;
function func(){
return="haha";
}
var num=func();//num="haha";
⑥ 函數中變量的作用域
在函數中,使用var 聲明的變量,為局部變量。只能在函數內部訪問;
不用var聲明的變量,為全局變量,在函數外部也能訪問;
函數的形參列表,默認為函數的局部變量,只能在函數內部使用。
⑦ 函數的聲明與函數的調用沒有先后之分,即可以在聲明函數前調用函數
func();//聲明func之前調用也是可以的
function func(){}


?[匿名函數的使用]
?1、聲明一個匿名函數,直接賦值給某一個事件。
?window.οnlοad=function(){} 文檔就緒函數
?2、匿名函數表達式。將匿名函數,賦值給一個變量。
?聲明:var func=function(){}
?調用:func();
?注意:使用匿名函數表達式時,函數的調用語句,必須放在函數聲明語句之后(與普通函數的區別)。
?3、自執行函數:
?① !function(){}();//可以使用多種運算符開頭但一般用感嘆號。
?!function(形參列表){}(實參列表);
?② (function(){}());//使用()將函數及函數后的括號包裹
?③ (function(){})();使用()只包裹函數部分;
?三種寫法的特點:
?① 使用!開頭,結構清晰,不容易混亂,推薦使用。
?② 能夠表明匿名函數與調用的()為一個整體,官方推薦使用。
?③ 無法表明括號與之后的()的整體性,不推薦使用;
?
?

//單行注釋
/*多行注釋,開頭一個* */
/**

[JS代碼的執行順序問題]
JS代碼在運行時,會分為兩大部分。檢查裝載執行階段
檢查裝載階段:會先檢測代碼的語法錯誤,進行變量、函數的聲明
執行階段:變量的賦值、函數的調用等,都屬于執行階段
以下面代碼為例:
console.log(num);//undefined
var num=10;

func1();//函數可以正常執行
function func1(){}

func2();//函數不能執行,打印func2時,顯示undefined
var func2=function(){}
上述代碼的執行順序為
------檢查裝載階段-------
var num;
function func1(){}
var func2;
------代碼執行階段-------
console.log(num); num=10;
func1();
func2(); func2=function(){}

[函數的內部屬性]
1、arguments對象
① 作用:用于儲存調用函數時的所有實參。當我們調用函數,并用實參賦值時,實際上參數列表已經
保存到arguments數組中,可以在函數中,使用arguments[n]的形式調用。n從0開始。
② arguments數組的個數,取決于實參列表,與形參無關。
但是,一旦第N個位置的形參、實參、arguments都存在時,形參將與arguments綁定,同步變化。(即在
函數中修改形參的值,arguments也會改變,反之,亦成立)
③ arguments.callee 是arguents的重要屬性,表示arguments所在函數的引用地址,在函數里面可以
使用arguments.callee調用函數本身
在函數內部,調用函數自身的寫法,叫做遞歸。
遞歸分為兩部分:遞和歸。以遞歸調用語句為界限,可以將函數分為上下兩部分。

遞:是當函數執行上半部分,遇到自身的調用語句時,繼續進入內層函數,再執行上半部分。
直到執行完最內層函數。
歸:當最內層函數執行完以后,再從最內層函數開始,逐漸執行函數的下半部分。

當最外層函數執行時,遇到自身的調用語句,會進入內層函數執行,而外層函數的后半部分暫不執行。直到
最內層函數執行完以后,再逐步向外執行。

使用遞歸計算1-10的和

?

?

var sum=0;var i=1;function sum1() {sum += i;i++;if (i<=10) {sum1();} return sum;}sum1();alert(sum);

?

轉載于:https://www.cnblogs.com/zzzzyy/p/7435946.html

總結

以上是生活随笔為你收集整理的HTML-JS 循环 函数 递归的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。