文件中引入JavaScript 嵌入到HTML文件中 在body或者head中添加script標簽 <script> var age = 10; console.log(age); </script> 引入js文件 創建一個js文件 var age = 20; console.log(age); 在 ...
文件中引入JavaScript
嵌入到HTML文件中
在body或者head中添加script標簽
<script> var age = 10; console.log(age); </script>
引入js文件
創建一個js文件
var age = 20; console.log(age);
在html文件中src引入改文件
<body> <script src="./age.js"></script> </body>
引入網路來源文件,和引入本地的js文件一樣,通過src
<body> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.4/jquery.js"></script> </body>
數據類型
原始數據類型:基本的數據類型(數值、字元串、布爾值)
複合數據類型:對象(一個對象可以看做是存放各種值得容器,由基礎數據類型組成)
var user = { "name":"ming", age:20, is_register:True }
特殊數據類型:null和undefined
typeof可以用來判斷基礎數據類型
<body> <script> var age = 20; console.log(typeof age); </script> </body>
算數運算符
加減乘除取餘:+ 、-、*、/、%
自增或者自減相當於當前值+1或者-1
<body> <script> var num = 20; console.log(++num); console.log(--num); </script> </body>
自增自減需要註意,有兩種寫法一種運算符號在前,一種運算符號在後,兩種效果不一樣
運算符號在前是先自增再運行,運算符號在後是先運行在自增
<body> <script> var num = 20; console.log(++num); // 21 var num1 = 20; console.log(num1++); // 20 </script> </body>
賦值運算符
賦值運算符 | 表達式 |
= | 賦值運算符 |
+= | x +=y 等同於 x= x+y |
-= | x -=y 等同於 x = x-y |
*= | x *= y 等同於 x = x*y |
/= | x /= y 等同於 x = x/y |
%= | x %= y 等同於 x = x % y |
比較運算符
比較運算符 | 描述 |
< | 小於 |
> | 大於 |
<= | 小於或者等於 |
>= | 大於或者等於 |
== | 相等 |
=== | 嚴格相等 |
!= | 不相等 |
!== | 嚴格不相等 |
== 和 ===區別
<body> <script> var num = 20; var num1 = 20; var num2 = "20"; console.log(num == num1); // True console.log(num == num1); // True console.log(num == num2); // True console.log(num === num2);// 嚴格比較數值和類型 False console.log(num != num2);// False console.log(num !== num2);// True 類型不一致 </script> </body>
布爾運算符
取反運算符(!)
<body> <script> var flag = true; console.log(!flag); </script> </body>
提示 undefind 、null、false、0、NaN、空字元串 取反都為true
且運算符(&&)
<body> <script> console.log(10<20 && 10>5); // True </script> </body>
活運算符(||)
<body> <script> console.log(10>20 || 10>5); // True </script> </body>
用Switch簡化多個if...else....
swith後面跟表達式,case後面記得一定要加上break,不加上break會把後續的都執行,最後default就是以上case都不是執行
<body> <script> var day = 3; switch(day){ case 0: console.log("今天周一"); break; case 1: console.log("今天周二"); break; case 2: console.log("今天周三"); break; default: console.log("今天不是周一、二、三") } </script> </body>
用三目運算符來代替if...else...
<表達式>?y :x
表達式正確返回y,錯誤則返回x
<body> <script> var num = 10; var result = num % 2 == 0 ? "是偶數" : "是奇數"; console.log(result) </script> </body>
字元串
<body> <script> //字元串要麼使用單引號嵌套雙引號,要麼使用雙引號嵌套單引號 var str1 = '我說"你好呀"'; //如果想使用雙引號嵌套雙引號,單引號嵌套單引號或者換行就需要用到反斜杠 var str2 = '我說\'你好呀\''; var str3 = "今天天氣真好,\ 我想出去玩"; console.log(str1,str2,str3); </script> </body>
用屬性length來查看字元串長度
<body> <script> var str3 = "今天天氣真好,\ 我想出去玩"; console.log(str3.length); </script> </body>
charAT查看索引位置的字元串
<body> <script> var str = "yetangjian的博客園"; console.log(str.charAt(1)); // 查看索引1位置的字元串e console.log(str.charAt(str.length -1));//查看最後一位的字元園 //如果索引不存在會列印出來空字元串 console.log(str.charAt(-1)); console.log(str.charAt(str.length+1)); </script> </body>
concat連接兩個字元串,創建新的字元串,不影響老的字元串(拼接的如果不是字元串,也會先轉為str再拼接)
同樣也可以用“+”拼接
<body> <script> var str = "yetangjian的博客園"; var str1 = "豐富多彩呀~~"; var result = str.concat(str1); document.write(result);//頁面上展示出來拼接後的 // 可以接收多個參數拼接 var str3 = "看的停不下來了"; document.write(str.concat(str1,str3)); </script> </body>
concat和+號的區別
+號會先運算數字類型在轉,所以下方會先做1+2後再轉字元串
concat不管什麼,都會轉字元串拼接
<body> <script> var num1 = 1; var num2 = 2; var str3 = "3"; document.write("".concat(num1,num2,str3)); // 123 document.write(num1+num2+str3);// 33 </script> </body>
substring截取字元串,兩個參數,參數1開始的位置的索引,第二個參數結束位置的索引(結束索引位置不取,左閉右開)
<body> <script> var str = "yetangjian的博客園"; // 截取博客園三個字,左閉右開 document.write(str.substring(11,str.length)); // 省略第二個參數,直接取到最後 console.log(str.substring(11)); //博客園 //在substring中參數如果是負數,直接當索引0用 </script> </body>
substr用法基本和substring一樣,區別是第二個參數不在是結束位置的索引,而是字元串的長度
<body> <script> var str = "yetangjian的博客園"; var result = str.substr(11,3);//從索引位置11開始取,截取長度為3 document.write(result);//博客園 //如果省略第二個參數,直接取到結尾,如果第二個參數是個負數,會變為0即字元串長度為0的空字元串 console.log(str.substr(11));//博客園 console.log(str.substr(11,-4));//空字元串 //如果第一個參數是負數,則從後向前計算字元位置,這個和之前的字元串不太一樣 console.log(str.substr(-3)); </script> </body>
indexof查詢字元串第一次出現的位置,不存在則返回-1
<body> <script> var str = "yetangjian的博客園"; // 判斷上述字元換中是否存在博客園 if (str.indexOf("博客園") > -1){ console.log("存在"); }else{ console.log("不存在"); } // 參數2位置開始索引位置 console.log(str.indexOf("博客園",12));//從12索引位置不存在了,所以返回-1 </script> </body>
trim方法去除首尾兩端的空格,包括\r \n \t都能去掉
<body> <script> var str = " yetangjian的博客園 "; console.log(str);// yetangjian的博客園 console.log(str.trim());//yetangjian的博客園 </script> </body>
split方法是按分隔符,返回一個分割出來的字元串數組
<body> <script> var str = "yetangjian|的|博客園"; var result = str.split("|"); console.log(result);// ["yetangjian", "的", "博客園"] console.log(str.split(""));//["y", "e", "t", "a", "n", "g", "j", "i", "a", "n", "|", "的", "|", "博", "客", "園"] //存在第二個參數可以設置獲取數組的長度 console.log(str.split("",2));//["y", "e"] </script> </body>
數組
查詢、追加
<body> <script> var arr = []; arr[1] = 1 // 通過下標加入數組值 console.log(arr) console.log(arr[1])//1 console.log(arr.length)//2 </script> </body>
遍歷
<body> <script> var city = ["shanghai","guangzhou","beijing"] // for for (var i=0;i<city.length;i++){ console.log(city[i]); } //