摘要:簡介俗稱,的正式名稱是,是網景公司公司開發的一種基于客戶端瀏覽器基于面向對象事件驅動式的網頁腳本語言。變量名不能使用關鍵字變量名對大小寫敏感。
javascript簡介
javascript俗稱js,js的正式名稱是ECMAScript,是網景公司Netscape公司開發的一種基于客戶端瀏覽器、基于面向對象、事件驅動式的網頁腳本語言。主要用于:交互式操作,表單驗證,網頁特效,web游戲,服務器腳本開發等;
特點
js是一種解釋性腳本編程語言
js是基于對象的腳本編程語言
簡單性
安全性(不能訪問本地硬盤)
動態性的
跨平臺性(依賴瀏覽器,與操作系統無關)
三種使用方法
(1)使用onclick:屬性構建執行js代碼
點擊
(2)使用
(3)導入外部的javascript文件,讓html頁面和js腳本分離
javascript變量和數據類型
js是弱類型腳本語言,使用變量之前,可以無需定義,當使用某個變量的時候直接使用即可。主要分為以下兩種定義方式:
(1)隱式定義:直接給變量賦值(隱式變量聲明的時候必須賦初值)
a = 10;
(2)顯示定義:使用var關鍵字定義變量(使用之前必須賦初值,不然會報undefined錯誤)
var a = 10;
變量命名規則:
首字母必須是字母、下劃線或者$符號。
余下的字母可以是下劃線、$、任意字母或數字。
變量名不能使用關鍵字
變量名對大小寫敏感。
js是弱類型腳本語言,聲明變量時無需指明變量的數據類型,js是解釋時動態決定的,數據保存在內存中時也是有數據類型的,常用數據類型如下:
數值類型(number):包含整數和浮點數
布爾類型(boolean):只有true或false兩個值
字符串類型(string):字符串必須用單引號或雙引號括起來
對象類型(object)
數組類型(array)
未定義類型(undefined):專門用來確定一個已經創建但是沒有初值的變量
空類型(null):用來表明某個變量的值為空
NaN:非數值型
注:undefined和null的值相等,類型不同。 兩個字符串是否相等,可用==來判斷。
數據類型轉換:
+號或者toString():數值number類型轉換成字符串
parseInt():將字符串轉為整型
parseFloat():將字符串轉換為浮點型
注意:
parseInt("67red") -> 67(字符串轉為整型的時候會自動截取前面的數字,后面的忽略)
parseInt("red67") -> NaN(字符串前面沒有數字,會報not a number錯誤)
stringObject.charAt(index):獲取字符串特定索引處的字符 index:下標(如果不在0~stringObject.length-1的范圍內,返回"") 返回值:string stringObject.toUpperCase():將字符串的所有字符轉換成大寫字母 返回值:string stringObject.toLowerCase():將字符串的所有字符轉換成小寫字母 返回值:string stringObject.substring(start, end):提取字符串中介于兩個指定下標之間的字符 start:必須,字符串中開始位置 end:非必需,字符串中結束位置,如果不指定,會一直到字符串的結尾 返回值:string arrayObject.slice(start, end):提取字符串中介于兩個指定下標之間的字符,可指定負數 start:必須,字符串中開始位置 end:非必需,字符串中結束位置,如果不指定,會一直到字符串的結尾 返回值:string stringObject.indexOf(searchvalue,fromindex):返回某個指定的字符串值在字符串中首次出現的位置 searchvalue:必須,需要查找的字符串 fromindex:非必須,字符串的指定位置,如果不指定,會從字符串的開始位置開始查找 返回值:number stringObject.replace(regexp/substr,replacement):將字符串中的某個子串以特定的字符串替換 regexp/substr:需要替換的字符串 replacement:替換字符串的值 返回值:string stringObject.split(separator,limit): separator 必需,分隔符 limit 可選。該參數可指定返回的數組的最大長度,如果不指定,整個字符串都會被分割 返回值:string數組 stringObject.concat(str1, str2...):用于將多個字符串拼加成一個字符串 str1:字符串 返回值:string
注意:
用字符串做加法的時候,會做字符串拼接工作
用字符串做減法、乘法、除法的時候,會將字符串轉換成數值類型進行減法、乘法、除法運算
js數組三種定義數組的方法:
(1)定義時直接給數組變量賦值
var arr = [1, 2, 3];
(2)定義一個空數組
var arr = [];
(3)用new方法定義數組
var arr = new Array();
特點:
數組長度可變
同一數組中的元素類型可以互不相同
當訪問未賦值的數組元素時,該元素值為undefined,不會數組越界
js里面沒有數組越界的概念,會顯示undefined
js運算符算術運算符:+ - * / % ++ --
賦值運算符:=
比較運算符:> < >= <= == != === !==
邏輯運算符:&& || !
位運算符:& | ~ ^ << >>
其他運算符:三目運算符(?:)
void運算符:強行指定某個表達式的不會返回值
`typeof` 運算符:獲取某個變量的數據類型 `instanceof`運算符:判斷某個變量的數據類型是否為指定的數據類型 `var a = void 3; //輸出為undefined` `document.write(typeof(str)); //輸出為string` ` alert(arr instanceof Array); //輸出為true`
注意:js中沒有繼承的概念,所有的對象的父類都是object
js流程控制js支持的分支語句主要有if和switch語句。
if(條件){ //表達式 }else{ //表達式 } //注意:switch中表達式的值可以是number類型,也可以是string類型 switch(表達式){ case 值1: //表達式 break; case 值1: //表達式 break; ... default://表達式; }
js支持的循環語句主要有while循環,do-while循環,for循環,for-in循環
//先判斷,后執行 while(循環條件){ //表達式 } //先執行,后判斷,至少執行一次 do{ //表達式 }while(循環條件) //當循環次數確定的情況下,一般用for循環,更簡潔 for(表達式1; 表達式2; 表達式3){ //表達式 } //可用于遍歷對象,比如數組(數組遍歷的是下標,對象遍歷的是屬性,注意:都不是具體的值) for(變量 in 對象){ //表達式 } //遍歷的是下標 var arr = [1, 2, 3, 4, 5]; arr[5] = 10; arr[10] = 11; for(var a in arr){ document.write(arr[a]+" "); }
js提供了break和continue來改變循環的控制流
break:跳出該層循環
continue:結束該層循環的本次循環
常用的特殊語句
語句是js的基本執行單元,每條語句都是以分號結束,語句了前面的賦值語句、算術運算等語句之外,還有一些特殊語句。
語句塊(包含在一對大括號里)
空語句(使用運用比較少)
異常拋出語句
throw new Error("異常拋出");
異常捕捉語句
try{ var age = 5; if(age == 5){ throw new Error("異常拋出"); } }catch(e){ document.write("出錯:"+e.message); }finally{ document.write("總會執行的finally塊"); }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/107887.html
摘要:這個系列的文章將記錄我準備春招的整個過程,我會將自己學習到的新知識記錄在這個系列里文章目錄前言說明準備方向目標前言說明作為半個科班出身學數學的應屆生,在學習計算機的時候還是比較吃力的,從今年月份開始接觸前端,到現在也有個月左右了。 這個系列的文章將記錄我準備春招的整個過程,我會將自己學習到的新知識記錄在這個系列里 文章目錄 前言說明 準備方向 目標 前言說明 ??作為半個科班出身...
摘要:這個系列的文章將記錄我準備春招的整個過程,我會將自己學習到的新知識記錄在這個系列里文章目錄前言說明準備方向目標前言說明作為半個科班出身學數學的應屆生,在學習計算機的時候還是比較吃力的,從今年月份開始接觸前端,到現在也有個月左右了。 這個系列的文章將記錄我準備春招的整個過程,我會將自己學習到的新知識記錄在這個系列里 文章目錄 前言說明 準備方向 目標 前言說明 ??作為半個科班出身...
摘要:這個系列的文章將記錄我準備春招的整個過程,我會將自己學習到的新知識記錄在這個系列里文章目錄前言說明準備方向目標前言說明作為半個科班出身學數學的應屆生,在學習計算機的時候還是比較吃力的,從今年月份開始接觸前端,到現在也有個月左右了。 這個系列的文章將記錄我準備春招的整個過程,我會將自己學習到的新知識記錄在這個系列里 文章目錄 前言說明 準備方向 目標 前言說明 ??作為半個科班出身...
閱讀 1893·2021-09-24 09:48
閱讀 3236·2021-08-26 14:14
閱讀 1693·2021-08-20 09:36
閱讀 1481·2019-08-30 15:55
閱讀 3643·2019-08-26 17:15
閱讀 1440·2019-08-26 12:09
閱讀 618·2019-08-26 11:59
閱讀 3338·2019-08-26 11:57