生活随笔
收集整理的這篇文章主要介紹了
Java Web 回顾-HCJ
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
盒子模型
數據類型
自定義函數
自定義對象
盒子模型
- 所有的HTML元素都可以看作一個四邊形盒子
- marign:外邊距
- padding:內邊距
- 邊框,內邊距,外邊距(上下左右)
- 行內樣式
- 標簽樣式
- css樣式表
- 首先建立一個css文件,里面寫css樣式
- 然后再目標文件中引入
/*css文件中樣式*/
div{border: 1px solid rebeccapurple;
}<head><meta charset="UTF-8"><title>haode </title>/*引入css樣式文件*/<link rel="stylesheet" style="css" href="./demo.css"/>
</head>
js使Java Web強大的腳本語言
- js引入的倆種方式
- 內部腳本方式:可在頭部中引入也可以在尾部
- js文件引入方式
- 注意當使用第二種方式引入時,script標簽內寫的js內容不會被執行,只會執行src引用js文件中的內容
//js文件內容
alert("hello");<head><meta charset="UTF-8"><title>haode </title><script src="demo.js"></script></head>
- 腳本語言:無法直接執行,必須結合其它語言執行,可以直接被瀏覽器解析執行
- Java script 語言特點
- 無需編譯,直接被瀏覽器解釋執行
- 不能獨立執行,必須嵌套在html文件中
- 執行順序,由上到下
- 沒有訪問系統文件的權限
- 在保證可讀情況下可以使用鏈式編程
- Java Script由三部分組成
- ECMA Script(核心):規定了js語法和基本對象
- Dom:文檔對象模型,處理網頁內容的方法和接口
- Bom:瀏覽器對象模型,與瀏覽器交互的方法和接口
- 注意事項:
- 保證html展示內容優先加載,最后加載腳本,增強用戶體驗性,可將script標簽放在body標簽中且放在尾部
- 練習時可放在head中
js變量
var a; //默認值undefined(未定義)
基本數據類型
- string:字符串類型:js中用“” 或‘’ 表示字符串,并沒有單個字符
- boolean:布爾類型
- number:數字類型
- null:空,一個占位符
- undefined:未定義類型,該類型只有一個固定值,即undefine,表示聲明卻未定義的具體值
- 因為undefine是從null派生出來的,所以undefi == null;
- 注意:
- js時若類型語言,變量的使用不嚴格遵循規范,所以一個變量聲明好之后,就可以賦予任何數據類型的值
- typeof(a) ;用來辨別是什么基本數據類型
- typeof(null); null屬于基本數據類型,但是會返回object
<script>var a = "你好";var b = '啊';alert(typeof (a));alert(a);alert(b);var num1 = 12;var num2 = 1.3;alert(num1);alert(num2);var flag1 = true;var flag2 = false;alert(flag1);alert(flag2);var r1; //默認值賦值undefinevar r2 = null;alert(r1);alert(r2);var t1 = undefined;alert(t1);</script>
引用數據類型
- 引用數據類型一般稱之為類,但js語言不存在編譯的過程,所以沒有類的概念,所以處理的引用類型都是對象
- 標準創建方式
- var str = new String();
- var str2 = new String;
比較運算符
- == 邏輯等:僅僅比較值
- === 全等:比較值且數據類型
邏輯運算符
正則對象的創建
- var reg = new RegExp(“表達式”); 此種方式在開發中基本不用
- var reg = /^表達式$/; (直接量,開發中常用)
- 注意:直接量存在邊界:^代表開始,$代表結束
- 直接量方式的正則時對象,不是字符串,不用引號
- 直接量和普通方式區別
<script>//直接量方式(必須全部字符都符合)var reg = /^\s*$/; //正則表達式,匹配0到多個空格var flag = reg.test(" "); //用來匹配字符串var flag2 = reg.test(" a ");alert(flag); //tryealert(flag2); //false//普通方式(除非全部字符否不符合正則,返回false,只要由字符符合返回true)var reg2 = /\s+/;var flag = reg.test(" a ");alert(flag); //true</script>
js數組
- 數組中每個成員類型沒有限制
- 數組的長度可以修改
- js數組的字中創建方式
var arr = [1, 2, "fff"]; //前倆種最常用var arr2 = new Array(); //創建默認長度0的數組var arr3 = new Array(4); //創建長度為4的數組var arr4 = new Array(1,2,3);alert(arr.length); //打印數組長度a[1] = "hello"; //修改元素值a[4] = "world"; //動態追加數組長度alert(arr.length) //5//將數組按照特定分隔符構成字符串var res = arr.join("+"); //1+2+fffalert(res);alert(arr); //不會對當前的數組改變var resvered = arr.reverse();alert(resvered); //反轉后的數組alert(arr); //會改變當前的數組var p = arr.pop(); //刪除且返回最后一個數組元素,原先數組收影響alert(p);arr.push("3"); //追加一個元素在尾部arr.push("2", "4", "5"); //追加多個元素按順序alert(arr);
全局函數
<script>eval("var a = 10;"); //eval(string)將傳入的字符串,作為js腳本代碼來執行//注意:只能傳入基本數據類型字符串,而不能傳入對象alert(a); //10</script>
編碼和解碼
- 對中文和特殊符號進行編碼
- URL和URI區別
- URI是統一資源標識符,標識資源唯一名稱
- URL是統一資源定位器,定位資源的網絡位置
- 資源:可以通過瀏覽器訪問的信息統稱為資源(圖片、文本、HTML)
- URI是標識資源的詳細名稱,包含資源名
- URL是定位資源的網絡位置包含http://
<script>eval("var a = 10;"); //eval(string)將傳入的字符串,作為js腳本代碼來執行//注意:只能傳入基本數據類型字符串,而不能傳入對象alert(a); //10//encodeURL(string) 對傳入的字符串和特殊符號進行編碼var msg = "http://www.baidu.com?username = 張三 & passwo = 123";var temo = encodeURI(msg);alert(temo);//對傳入的字符串解碼var t = decodeURI(temo);</script>
字符串轉數字
- 如果某個字符串的字符從字面值無法轉換為數字,那么就從該字符停止轉換,僅返回前面正確的轉換值
- 若從第一個字符就無法轉換,則停止轉換且返回NaN
<script>eval("var a = 10;"); //eval(string)將傳入的字符串,作為js腳本代碼來執行//注意:只能傳入基本數據類型字符串,而不能傳入對象alert(a); //10//encodeURL(string) 對傳入的字符串和特殊符號進行編碼var msg = "http://www.baidu.com?username = 張三 & passwo = 123";var temo = encodeURI(msg);alert(temo);//對傳入的字符串解碼var t = decodeURI(temo);</script>
自定義函數
- function必須是小寫
- 無需定義返回值類型
- 參數定義無需使用返回值類型
- return可以不寫也可以return具體值或僅僅寫return
- 函數體中無論寫不寫return,都可以使用變量接收結果,但是不寫return返回undefined即js函數執行之后一定有返回值
<script>//函數創建格式/** function 函數名(形參列表) {* 函數體* }* *///函數求和function getSum(a, b) {return a+b;}var res = getSum(1, 2);alert(res); //3function getSum(a, b) {}var res = getSum(1, 2); //undefined //說明js中函數無論加不加return必有返回值</script><script>function getSum(a, b) {return a+b;}function getSum() {return "你好的";}var res = getSum(1, 2);alert(res); //你好的</script>
- 注意:
- 對于js中函數,根本不存在重載,只有函數覆蓋,即對于重名函數,后定義的會覆蓋掉前定義的,即只會執行重名的最后的一個函數
- 因為js中不存在函數重載,僅僅通過函數名來調用函數,即使實參與形參不匹配,也不會影響正常使用,若形參未賦值,使用默認值undefined
自定義對象
<script>//1義/聲明了一個對象function Person() {}//2聲明對象function Person(n, a) {//定義且初始化對象屬性this.name = n;this.age = a;}//3聲明對象function Person() {//定義且初始化對象屬性this.name = "校長";this.age = 16;}//創建一個對象var p = new Person();alert(p);</script>
<script>//定義/聲明了一個對象/*** 定義了對象中的屬性* this:代表當前對象Person** @constructor*//*** 1、使用this關鍵字,在對象聲明階段定義一個屬性* 2、創建對象后的,使用對象.屬性方式動態定義屬性* *///1、在對象內部聲明屬性且賦值function Person(n, a) {//定義且初始化對象屬性this.name = n;this.age = a;}//創建一個對象var p = new Person("下哦昂", 18);p.name = "小娃";alert(p.name);alert(p.age);//2、聲明屬性并賦值方式p.sex = "男"; //未Person對象聲明并賦值屬性alert(p.sex);</script>
對象直接量
<script>//person對象創建完畢var person = {name : "校長", age : 18};alert(person.name);alert(person.age);</script>
<script>//person對象創建完畢var person = {name : "校長", age : 18};alert(person.name);alert(person.age);//屬性賦值方式2person.name = "效力";//屬性創建且賦值2person.sex = "男";alert(person.name);alert(person.sex);</script>
總結
以上是生活随笔為你收集整理的Java Web 回顾-HCJ的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。