當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
JavaScript基础笔记
生活随笔
收集整理的這篇文章主要介紹了
JavaScript基础笔记
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今日內容
1. JavaScript基礎JavaScript:
* 概念: 一門客戶端腳本語言* 運行在客戶端瀏覽器中的。每一個瀏覽器都有JavaScript的解析引擎* 腳本語言:不需要編譯,直接就可以被瀏覽器解析執行了* 功能:* 可以來增強用戶和html頁面的交互過程,可以來控制html元素,讓頁面有一些動態的效果,增強用戶的體驗。* JavaScript發展史:1. 1992年,Nombase公司,開發出第一門客戶端腳本語言,專門用于表單的校驗。命名為 : C-- ,后來更名為:ScriptEase2. 1995年,Netscape(網景)公司,開發了一門客戶端腳本語言:LiveScript。后來,請來SUN公司的專家,修改LiveScript,命名為JavaScript3. 1996年,微軟抄襲JavaScript開發出JScript語言4. 1997年,ECMA(歐洲計算機制造商協會),制定出客戶端腳本語言的標準:ECMAScript,就是統一了所有客戶端腳本語言的編碼方式。* JavaScript = ECMAScript + JavaScript自己特有的東西(BOM+DOM)* ECMAScript:客戶端腳本語言的標準1. 基本語法:1. 與html結合方式1. 內部JS:* 定義<script>,標簽體內容就是js代碼2. 外部JS:* 定義<script>,通過src屬性引入外部的js文件* 注意:1. <script>可以定義在html頁面的任何地方。但是定義的位置會影響執行順序。2. <script>可以定義多個。2. 注釋1. 單行注釋://注釋內容2. 多行注釋:/*注釋內容*/3. 數據類型:1. 原始數據類型(基本數據類型):1. number:數字。 整數/小數/NaN(not a number 一個不是數字的數字類型)2. string:字符串。 字符串 "abc" "a" 'abc'3. boolean: true和false4. null:一個對象為空的占位符5. undefined:未定義。如果一個變量沒有給初始化值,則會被默認賦值為undefined2. 引用數據類型:對象4. 變量* 變量:一小塊存儲數據的內存空間* Java語言是強類型語言,而JavaScript是弱類型語言。* 強類型:在開辟變量存儲空間時,定義了空間將來存儲的數據的數據類型。只能存儲固定類型的數據* 弱類型:在開辟變量存儲空間時,不定義空間將來的存儲數據類型,可以存放任意類型的數據。* 語法:* var 變量名 = 初始化值;* typeof運算符:獲取變量的類型。* 注:null運算后得到的是object5. 運算符1. 一元運算符:只有一個運算數的運算符++,-- , +(正號) * ++ --: 自增(自減)* ++(--) 在前,先自增(自減),再運算* ++(--) 在后,先運算,再自增(自減)* +(-):正負號* 注意:在JS中,如果運算數不是運算符所要求的類型,那么js引擎會自動的將運算數進行類型轉換* 其他類型轉number:* string轉number:按照字面值轉換。如果字面值不是數字,則轉為NaN(不是數字的數字)* boolean轉number:true轉為1,false轉為02. 算數運算符+ - * / % ...3. 賦值運算符= += -+....4. 比較運算符> < >= <= == ===(全等于)* 比較方式1. 類型相同:直接比較* 字符串:按照字典順序比較。按位逐一比較,直到得出大小為止。2. 類型不同:先進行類型轉換,再比較* ===:全等于。在比較之前,先判斷類型,如果類型不一樣,則直接返回false5. 邏輯運算符&& || !* 其他類型轉boolean:1. number:0或NaN為假,其他為真2. string:除了空字符串(""),其他都是true3. null&undefined:都是false4. 對象:所有對象都為true6. 三元運算符? : 表達式var a = 3;var b = 4;var c = a > b ? 1:0;* 語法:* 表達式? 值1:值2;* 判斷表達式的值,如果是true則取值1,如果是false則取值2;6. 流程控制語句:1. if...else...2. switch:* 在java中,switch語句可以接受的數據類型: byte int shor char,枚舉(1.5) ,String(1.7)* switch(變量):case 值:* 在JS中,switch語句可以接受任意的原始數據類型3. while4. do...while5. for7. JS特殊語法:1. 語句以;結尾,如果一行只有一條語句則 ;可以省略 (不建議)2. 變量的定義使用var關鍵字,也可以不使用* 用: 定義的變量是局部變量* 不用:定義的變量是全局變量(不建議)8. 練習:99乘法表<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>99乘法表</title><style>td{border: 1px solid;}</style><script>document.write("<table align='center'>");//1.完成基本的for循環嵌套,展示乘法表for (var i = 1; i <= 9 ; i++) {document.write("<tr>");for (var j = 1; j <=i ; j++) {document.write("<td>");//輸出 1 * 1 = 1document.write(i + " * " + j + " = " + ( i*j) +" ");document.write("</td>");}/*//輸出換行document.write("<br>");*/document.write("</tr>");}//2.完成表格嵌套document.write("</table>");</script></head><body></body></html>2. 基本對象:1. Function:函數(方法)對象1. 創建:1. var fun = new Function(形式參數列表,方法體); //忘掉吧2. function 方法名稱(形式參數列表){方法體}3. var 方法名 = function(形式參數列表){方法體}2. 方法:3. 屬性:length:代表形參的個數4. 特點:1. 方法定義是,形參的類型不用寫,返回值類型也不寫。2. 方法是一個對象,如果定義名稱相同的方法,會覆蓋3. 在JS中,方法的調用只與方法的名稱有關,和參數列表無關4. 在方法聲明中有一個隱藏的內置對象(數組),arguments,封裝所有的實際參數5. 調用:方法名稱(實際參數列表);2. Array:數組對象1. 創建:1. var arr = new Array(元素列表);2. var arr = new Array(默認長度);3. var arr = [元素列表];2. 方法join(參數):將數組中的元素按照指定的分隔符拼接為字符串push() 向數組的末尾添加一個或更多元素,并返回新的長度。3. 屬性length:數組的長度4. 特點:1. JS中,數組元素的類型可變的。2. JS中,數組長度可變的。3. Boolean4. Date:日期對象1. 創建:var date = new Date();2. 方法:toLocaleString():返回當前date對象對應的時間本地字符串格式getTime():獲取毫秒值。返回當前如期對象描述的時間到1970年1月1日零點的毫秒值差5. Math:數學對象1. 創建:* 特點:Math對象不用創建,直接使用。 Math.方法名();2. 方法:random():返回 0 ~ 1 之間的隨機數。 含0不含1ceil(x):對數進行上舍入。floor(x):對數進行下舍入。round(x):把數四舍五入為最接近的整數。3. 屬性:PI6. Number7. String8. RegExp:正則表達式對象1. 正則表達式:定義字符串的組成規則。1. 單個字符:[]如: [a] [ab] [a-zA-Z0-9_]* 特殊符號代表特殊含義的單個字符:\d:單個數字字符 [0-9]\w:單個單詞字符[a-zA-Z0-9_]2. 量詞符號:?:表示出現0次或1次*:表示出現0次或多次+:出現1次或多次{m,n}:表示 m<= 數量 <= n* m如果缺省: {,n}:最多n次* n如果缺省:{m,} 最少m次3. 開始結束符號* ^:開始* $:結束2. 正則對象:1. 創建1. var reg = new RegExp("正則表達式");2. var reg = /正則表達式/;2. 方法 1. test(參數):驗證指定的字符串是否符合正則定義的規范 9. Global1. 特點:全局對象,這個Global中封裝的方法不需要對象就可以直接調用。 方法名();2. 方法:encodeURI():url編碼decodeURI():url解碼encodeURIComponent():url編碼,編碼的字符更多decodeURIComponent():url解碼parseInt():將字符串轉為數字* 逐一判斷每一個字符是否是數字,直到不是數字為止,將前邊數字部分轉為numberisNaN():判斷一個值是否是NaN* NaN六親不認,連自己都不認。NaN參與的==比較全部問falseeval():講 JavaScript 字符串,并把它作為腳本代碼來執行。3. URL編碼傳智播客 = %E4%BC%A0%E6%99%BA%E6%92%AD%E5%AE%A2* BOM* DOM總結
以上是生活随笔為你收集整理的JavaScript基础笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HTMLCSS课堂笔记
- 下一篇: JavaScript高级笔记