1. 程式人生 > >#JS 自學的筆記01

#JS 自學的筆記01

JS 自學的筆記01

<!DOCTYPE html>
<html lang="zh">
<head>
	<meta charset="UTF-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<meta http-equiv="X-UA-Compatible" content="ie=edge" />
	<title>Document</title>
</head>
<body>
	<script type="text/javascript"
> var a = "hello world" console.log(a); //console.log()控制檯輸出 //alert() 彈窗提示 alert(a); alert(a); var b = [1,2,3,4,5] console.log(b[0]); // 利用下標讀取 console.log(b); b.pop(); // b.pop() 末尾刪除 console.log(b); b.push(6); // b.push() 末尾新增 console.log(b); console.log(typeof b)
; // typeof檢視型別 var a = 123; var b = "456"; var c = Number(b) + a; console.log(c); var c = a + b; console.log(c); // 加法, 如果不做型別轉換處理,預設轉化為字串進行處理 var a = 2; var b = "3.5"; var c = a * b; console.log(c); // 乘法,自動將字串string轉化 數字型別Number console.log(typeof c) document.write
(c) document.write("<br />") // document.write() 列印在網頁頁面中 // document.write("<br />")網頁頁面中 換行 var a = 1; var b = "1"; if(a == b){ console.log("xiangdeng") } //不同型別間比較,“==” 之比較,轉化成同一型別後的值後 ,看值是否相等 if(a === b){ console.log("juedui") } else{ console.log("NOjueudi") } // “===” 三個等號為絕對相等, 如果型別不同,其結果就是不等 // “==”與“===”區別(兩個等號與三個等號) //1、對於string,number等基礎型別,==和===是有區別的 //1)不同型別間比較,==之比較“轉化成同一型別後的值”看“值”是否相等,===如果型別不同,其結果就是不等 //2)同類型比較,直接進行“值”比較,兩者結果一樣 // //2、對於Array,Object等高階型別,==和===是沒有區別的 //進行“指標地址”比較 // //3、基礎型別與高階型別,==和===是有區別的 //1)對於==,將高階轉化為基礎型別,進行“值”比較 //2)因為型別不同,===結果為false var a = "3"; if(a == "1"){ console.log("今天為星期一 不是幸運日") } else if(a == "2"){ console.log("今天為星期二 不是幸運日") } else if(a == "3"){ console.log("今天為星期三 是幸運日!") } else if(a == "4"){ console.log("今天為星期四 不是幸運日") } else{ console.log("今天不是幸運日") } // 和python中 if-elif-else 語法相似 // 但是是有區別的 不能縮寫為elif 必須寫全else if var a = 3; switch(a){ case 1:console.log("不是幸運日") case 2:console.log("不是幸運日") case 3:console.log("是幸運日!") case 4:console.log("不是幸運日") } // switch() 工作原理:首先設定表示式 n(通常是一個變數)。 // 隨後表示式的值會與結構中的每個 case 的值做比較。 // 如果存在匹配,則與該 case 關聯的程式碼塊會被執行。 // 請使用 break 來阻止程式碼自動地向下一個 case 執行。 for(var a=0;a<10;a++){ if (a == 5) { continue; } console.log(a) } // for迴圈 console.log()列印在控制檯console var a = 1; while(a<10){ document.write(a) a++; } document.write("<br />") // document.write()列印在網頁中 // document.write("<br />")網頁中進行換行 // while迴圈 // //我們知道了b=a++和b=++a的區別,不妨令a=5 // //前者是先賦值,再自加,即b=a;a=a+1; //結果b=5,a=6 // //後者是先自加,再賦值,即a=a+1;b=a; //結果a=6,b=6 var a = 1; do{ console.log(a); a++; }while(a<10) // do while迴圈至少執行一次,即便條件為 false,因為程式碼塊是在條件語句判斷前執行. for(var a=1; a<10;a++){ for(var b=a;b<10;b++){ document.write(a,"*",b,"=",a*b,"&emsp;") } document.write("<br />") } // 九九乘法表,document.write("<br />")換行 // "&emsp;"空格 while(1){ var a = Math.ceil(Math.random()*5); // Math.random()只能取到0-1的數 // Math.ceil()向上取整數 //◎Math.ceil()執行向上舍入,即它總是將數值向上舍入為最接近的整數; //◎Math.floor()執行向下舍入,即它總是將數值向下舍入為最接近的整數; //◎Math.round()執行標準舍入,即它總是將數值四捨五入為最接近的整數(這也是我們在數學課上學到的舍入規則)。 // 相當於隨機一個1-5的整數 var b = Math.ceil(Math.random()*5); var c = a - b; document.write(a,"&emsp;",b,"&emsp;",c); document.write("<br />"); if(c == -1){ alert("B勝利"); break; } else if(c == 1){ alert("a勝利"); break; } else if(c==-4){ alert("a勝利"); break; } else if(c == 4){ alert("b勝利"); break; } else{ alert("平局"); } } function foo(a){ document.write(a); } foo("hello world"); // 簡單的函式定義用到function,相當於Python中def; function foo1(name,age){ var per = new foo(); // function foo1(name,age) 相當於穿建了一個類class foo1(name,age) // var per = new foo();相當於定義了一個類名為foo1的類的物件 // 相當於Python中 def __init__(self,name,age) // self.name = name // self,age = age per.name = name; per.age = age; return per; } var per1 = foo1("wk",25); var per2 = foo1("wsc",24); var per3 = foo1("wnm",23); document.write(per1.age); console.log(per1) document.write(per2.name); document.write(per3.age); document.write("<br />") function foo2(name,age){ this.name = name; this.age = age; } var per4 = new foo2("zz","18") var per5 = new foo2("zc","17") var per6 = new foo2("zx","16") // 建立方法,呼叫方法的時候再建立物件new foo console.log(per4) document.write(per4.age + "&emsp;") document.write(per5.name) document.write("<br />") </script> </body> </html>