日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JS基础篇2:

發(fā)布時間:2023/12/18 javascript 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JS基础篇2: 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 1. JS變量
    • 1.1 局部變量和全局變量
  • 2. JS函數(shù)
  • 3. 數(shù)據(jù)類型
  • 4. 事件

1. JS變量

注意:JS是弱編程語言,不論何種數(shù)據(jù)類型,賦值方式:

  • 聲明:var 變量名;
  • 賦值:變量名=值;
  • 變量聲明后,沒手動賦值時,系統(tǒng)默認(rèn)賦值是undefined.
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>關(guān)于JS中的變量</title> </head> <body><!--定義JS代碼格式:JS代碼和CSS一樣,都是基于HTML,脫離HTML則無意義--><script type="text/javascript">/** 1.javaScript當(dāng)中的變量,如何聲明,怎么賦值?* --聲明:var 變量名;* 賦值:變量名=值;* var i=100;i=false;i="abc";* i=new Object(); i=3.123;* 2.重點:javaScript是一種弱類型編程語言。* *///在JS中,當(dāng)一個變量沒有手動賦值的時候,系統(tǒng)默認(rèn)是undefined.var i;//undefined在JS中是一個具體存在值。alert("i="+i);//i=undefinedalert(undefined);var k=undefined;alert("k="+k);//一個變量沒有聲明/定義,直接訪問?//alert(age);//語法錯誤:'age' is not defined,變量age不存在,沒聲明。var a,b,c=400.5;alert("a="+a);alert("b="+b)alert("c="+c);a=false;alert(a);a="hsdj";alert(a)a=1.2;alert(a)</script> </body> </html>

1.1 局部變量和全局變量

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>JS的局部變量和全局變量</title> </head> <body><script type="text/javascript">/** 全局變量:* 在函數(shù)體之外聲明的變量屬于全局變量,全局變量的生命周期是:* -瀏覽器打開時聲明,瀏覽器關(guān)閉時銷毀,盡量少用。因為全局變量會一直在瀏覽器的內(nèi)存當(dāng)中,耗費內(nèi)存空間。* -能使用局部變量盡量使用局部變量。* 局部變量:* 在函數(shù)體當(dāng)中聲明的變量,包括一個函數(shù)的形參都屬于局部變量,* 局部變量的生命周期是:函數(shù)開始執(zhí)行時局部變量的內(nèi)存空間開辟,函數(shù)執(zhí)行結(jié)束之后,局部變量的內(nèi)存空間釋放。* 局部變量生命周期較短。* *///全局變量var i=100;function accessI() {//訪問的是全局變量alert("i="+i);}accessI();//全局變量var username="jack";function accessUsername() {//局部變量var username="李四";//就近原則:訪問局部變量alert("username="+username)}//調(diào)用函數(shù)accessUsername();//訪問全局變量,上面函數(shù)執(zhí)行結(jié)束之后,局部變量的內(nèi)存空間釋放。alert("username ="+username);function accessAge() {var age=60;alert("年齡="+age);}accessAge();//alert("age="+age);//報錯(語法不對),局部變量已經(jīng)釋放了//以下語法很奇怪function myfun() {//當(dāng)一個變量聲明的時候沒有使用var關(guān)鍵字,那么不管這個變量是在哪里聲明的,都是全局變量。myname="吳京";alert("myfun是"+myname)//myfun是吳京}myfun();alert("myfun="+myname)//myfun=吳京,還是會輸出,myname未使用var,是全局變量</script> </body> </html>

2. JS函數(shù)

函數(shù)表示的2種方式:

第一種方式:
function 函數(shù)名(形式參數(shù)列表){
函數(shù)體;
}
第二種方式:
函數(shù)名=function(形式參數(shù)列表){
函數(shù)體;
}

(1)

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>JS函數(shù)初步</title> </head> <body> <script type="text/javascript">/** 1.JS中的函數(shù):等同于JAVA語言中的方法,函數(shù)是一段可以被* 重復(fù)利用的片段。** 2.JS語法格式: JS的函數(shù)不需要指定返回值類型,返回什么類型都行。* 第一種方式:* function 函數(shù)名(形式參數(shù)列表){* 函數(shù)體;* }* 第二種方式:* 函數(shù)名=function(形式參數(shù)列表){* 函數(shù)體;* }* */function sum(a,b) {//a和b都是局部變量,他們都是形參(a和b都是變量名,變量名隨意)alert(a+b)}//函數(shù)只有調(diào)用才能執(zhí)行的sum(12,34)//定義函數(shù)sayHellosayHello=function (username) {alert("hello "+username)}//調(diào)用函數(shù)sayHello("胡歌") </script><input type="button" value="點擊" onclick="sayHello('JACK')"/><input type="button" value="求和" onclick="sum(10,18)"/> </body> </html>

(2)JS語法隨意,"+"也表示字符串拼接。

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>JS函數(shù)初步</title> </head> <body> <script type="text/javascript">/** java中的方法有重載機制,JS中的函數(shù)能重載嗎?* JS當(dāng)中的函數(shù)在調(diào)用的時候,參數(shù)的類型沒有限制,并且參數(shù)的個數(shù)也沒有限制,JS就是這么隨意。(弱類型)* */function sum(a,b) {return a+b;}//調(diào)用sum函數(shù)var retValue=sum(2,4);alert(retValue)//6//字符串拼接 "+"是連接的作用var retValue2=sum("JACK");//JACK賦值給a變量,b變量沒有賦值,系統(tǒng)默認(rèn)賦值undefinedalert(retValue2);//JACKundefinedvar retValue21=sum(3,"號是科比");alert(retValue21);//3號是科比var retValue3=sum();alert(retValue3);//NaN (NaN是一個具體存在的值,該值表示不是數(shù)字)var retValue4=sum(1,2,3,4);alert(retValue4)//3,1+2=3 后面數(shù)字作廢/** 在JS中,函數(shù)的名字不能重名,當(dāng)函數(shù)重名的時候,后聲明的函數(shù)會將之前聲明的同名函數(shù)覆蓋。* */function test1(username) {alert("test1");}function test1() {alert("test1,test1,test1");}test1("陳浩民")//這個調(diào)用的是第二個test1()函數(shù)。test1,test1,test1 </script> </body> </html>

3. 數(shù)據(jù)類型

  • 原始類型:Undefined、Number、String、Boolean、Null
  • 引用類型:Object以及Object的子類
  • typeof運算符的運算結(jié)果是以下6個字符串之一:注意字符串都是小寫。
    “undefined” “number” “string” “boolean” “object” “function”
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>JS的數(shù)據(jù)類型</title> </head> <body><script type="text/javascript">/** 1.雖然JS的變量在聲明的時候不需要指定數(shù)據(jù)類型,但是賦值,每一個數(shù)據(jù)還是有類型的。所以也需要學(xué)習(xí)* JS包括哪些數(shù)據(jù)類型。* 原始類型:Undefined、Number、String、Boolean、Null* 引用類型:Object以及Object的子類* 2.ES規(guī)范,在ES6之后,又基于以上的6種類型外添加一種新的類型:* Symbol* 3.JS中有一個運算符叫作typeof,這個運算符可以在程序的運行階段動態(tài)獲取變量的數(shù)據(jù)類型。* --typeof運算符的語法格式:typeof 變量名* --typeof運算符的運算結(jié)果是以下6個字符串之一:注意字符串都是小寫。* "undefined" "number" "string" "boolean" "object" "function"** 4.在JS中比較字符串是否相等使用"=="完成。* */function sum(a,b) {if (typeof a=="number" && typeof b=="number"){return a+b;}alert(a+","+b+"必須都是數(shù)字!");//false,abc必須都是數(shù)字!}var retValue=sum(false,"abc");alert(retValue);//undefined,function函數(shù)沒有返回值,則retValue就是默認(rèn)值undefinedretValue1=sum(3,5);alert(retValue1);//8,函數(shù)返回了值a+b=8var i;alert(typeof i);//undefinedvar k=10;alert(typeof k);//numbervar o="虎哥";alert(typeof o);//stringvar p=false;alert(typeof p);//booleanvar d=null;alert(typeof d);//objectvar obj=new Object();alert(typeof obj);//objectfunction f() {}alert(typeof f);//function</script> </body> </html>

數(shù)據(jù)類型
(1)undefined

<script type="text/javascript">/*Undefined未賦值時自動默認(rèn)賦值;手動賦值*/var i;//默認(rèn)undefinedvar k=undefined;//賦值undefinedalert(i==k);//truevar y="undefined";//字符串undefinedalert(y==k);//false </script>

(2)Number

<script type="text/javascript">/** 1.Number類型包括哪些值?* -1 0 1 2 2.3 3.14 100......NaN Infinity* 整數(shù)、小數(shù)、正數(shù)、負(fù)數(shù)、不是數(shù)字、無窮大都屬于Number類** 2.關(guān)于NaN(表示Not a Number,不是一個數(shù)字,但屬于Number類型);* 什么情況出現(xiàn)NaN?* 運算結(jié)果本來應(yīng)該是一個數(shù)字,最后算完不是一個數(shù)字的時候,結(jié)果是NaN.* 3.isNaN函數(shù):true表示不是一個數(shù)字,false表示是一個數(shù)字。* 4.parseInt()函數(shù)* 5.parseFloat()函數(shù)* 6.Math.ceil()函數(shù):向上取整* */var v1=1;var v2=213.32;var v3=-123;var v4=NaN;var v5=Infinity;//Numberalert(typeof v1);alert(typeof v2);alert(typeof v3);alert(typeof v4);alert(typeof v5);var a=100;var b="中國";alert(a/b);//除號顯然最后結(jié)果應(yīng)該是一個數(shù)字,但是運算的過程中導(dǎo)致最后不是一個數(shù)字,那么結(jié)果是NaN.var e=1213;var f="janjieshi";alert(e+f);//1213janjieshi,先進行字符串拼接運算//Infinity(當(dāng)除數(shù)為0的時候,結(jié)果為無窮大)alert(10/0);//Infinity//isNaN函數(shù):結(jié)果是true表示不是一個數(shù)字,反之,是數(shù)字function sum(a,b) {if (isNaN(a)||isNaN(b)){alert("參與運算的必須是數(shù)字");return;}return a + b;}sum(100,"acv");alert(sum(100,200));//parseInt():可以將字符串自動轉(zhuǎn)換成整型數(shù)字,并且取整數(shù)位。alert(parseInt("3.9999"));//3alert(parseInt(3.9999));//3//parseFloat():可以將字符串自動轉(zhuǎn)換成浮點型數(shù)字。alert(parseFloat("3.434")+2);//5.434//Math.ceil()alert(Math.ceil(2.1));//3,向上取整。alert(10/3);//3.3333333333333335</script>

(3)Boolean

<script type="text/javascript">/** 1.JS中Boolean類型有2個值:true和false;* 2.在Boolean類型中有一個函數(shù)叫做:Boolean()* 語法格式:Boolean(數(shù)據(jù))* Boolean()函數(shù)的作用是將非布爾類型轉(zhuǎn)換成布爾類型。* */var username="Jack";/*if(Boolean(username)){alert("歡迎你"+username);}else {alert("用戶名不能為空")}*/if(username){//可以省略,自動調(diào)Boolean函數(shù)轉(zhuǎn)換成boolean類型alert("歡迎你"+username);}else {alert("用戶名不能為空")}//規(guī)律:“有”就轉(zhuǎn)換成true,"沒有"就轉(zhuǎn)換成falsealert(Boolean(23));//truealert(Boolean(0));//falsealert(Boolean(""));//falsealert(Boolean("acdl"))//truealert(Boolean("null"));//falsealert(Boolean(NaN));//falsealert(Boolean("undefined"));//falsealert(Boolean(Infinity));//true//無限循環(huán)while (10/3){alert("啊哈哈");}</script>

(4)String(常用函數(shù))

  • 第一種:var s = “abc”;
  • 第二種:(使用JS內(nèi)置的支持類String):var s2=new String(“abc”);
<script type="text/javascript">/**1.String類型:可以使用雙引號,也可以使用單引號;* 2.JS當(dāng)中,怎么創(chuàng)建字符串對象?* 兩種方式:* 第一種:var s = "abc";* 第二種:(使用JS內(nèi)置的支持類String):var s2=new String("abc");* 需要注意:String是一個內(nèi)置類,可以直接用,String的父類是Object。* 3.無論小String還是大String(Object),他們的屬性和函數(shù)都是通用的。* 4.關(guān)于String類型的常用屬性和函數(shù)?* *常用屬性:length獲取字符串長度* *常用函數(shù):* indexOf--獲取指定字符串在當(dāng)前字符串中第一次出現(xiàn)處的下標(biāo)* lastIndexOf--獲取指定字符串在當(dāng)前字符串中最后一次出現(xiàn)處的下標(biāo)* replace--替換* substr--截取子字符串* substring--截取子字符串* toLowerCase--轉(zhuǎn)換成小寫* toUpperCase--轉(zhuǎn)換成大寫* split--拆分字符串* *///小String(屬于原始類型String)var x="avd";alert(typeof x);//string//大String(屬于Object類型)var u=new String("axc");alert(typeof u);//object//獲取字符串的長度,lengthalert(x.length);//3alert(u.length)//3//indexOfalert("http://www.baidu.com".indexOf("http"));//0alert("http://www.baidu.com".indexOf("https"));//-1,不包含//判斷一個字符串中是否包含某個子字符串?alert("http://www.baidu.com".indexOf("https")>=0?"包含":"不包含");//lastIndexOfalert("我是一個中國人,你是誰".lastIndexOf("是"))//9,最后一個“是”下標(biāo)是9//replace(只替換第一個)alert("name=value%name=value%name=value".replace("%","&"));//name=value&name=value%name=value//繼續(xù)調(diào)用replace方法,就會替換第“二”個;想全部替換需要使用正則表達式。alert("name=value%name=value%name=value".replace("%","&").replace("%","&"));//name=value&name=value&name=value//考點:經(jīng)常問substr和substring的區(qū)別://substr(startIndex,length)alert("abcdefghijk".substr(2,4))//cdef,從2開始,取4個長度//substring(starIndex,endIndex)alert("abcdefghijk".substring(2,4))//cd,從2開始,不包括4下標(biāo)。//toLowerCase--轉(zhuǎn)換成小寫alert("ABCDEF".toLowerCase());//abcdef//toUpperCase--轉(zhuǎn)換成大寫alert("ghtyr".toUpperCase());//GHTYR//split--拆分字符串,split(string,limit),string以什么字符拆分;limit拆分成幾組。alert("我的老師的名字的結(jié)尾的是飛字!".split("的"))//我,老師,名字,結(jié)尾,是飛字!alert("我的老師的名字的結(jié)尾的是飛字!".split("的",2))//我,老師</script>

(5)Object類型

JS中的Object類型:
1.Object類型是所有類型的超類,自定義的任何類型,默認(rèn)繼承Object。
2.Object類包括哪些屬性?
* prototype屬性(常用的,主要是這個):作用是給類動態(tài)的擴展屬性和函數(shù)。
* constructor屬性
3.Object類包括哪些函數(shù)?
* toString()/valueOf()/toLocaleString()
4.在JS當(dāng)中定義的類默認(rèn)繼承Object,會繼承Object類中所有屬性以及函數(shù)。自己定義的類也有prototype屬性。

<script type="text/javascript">/** 5.在JS當(dāng)中怎么定義類?怎么new對象?* *定義類的語法:* 第一種方式:* function 類名(形參){** }* 第二種方式:* 類名=function(形參){** }* *創(chuàng)建對象的語法:* new 構(gòu)造方法名(實參)//構(gòu)造方法名和類名一致* */function sayHello() {alert("hello,teacher")}//這種方式調(diào)用就是把sayHello當(dāng)做函數(shù)sayHello();//hello,teacher//這種方式就表示把sayHello當(dāng)做一個類來創(chuàng)建對象var obj=new sayHello();//hello,teacher; obj是一個引用,保存內(nèi)存地址指向堆中的對象alert(obj);//結(jié)果是[object Object]//JS中的類的定義,同時又是一個構(gòu)造函數(shù)的定義//在JS中類的定義和構(gòu)造函數(shù)的定義是放在一起完成的。function User(a,b,c) {//a b c是形參,屬于局部變量。//聲明屬性(this表示當(dāng)前對象),User類中有三個屬性:sno/sname/sagethis.sno=a;this.sname=b;this.sage=c;}//創(chuàng)建對象var u1=new User(111,"吳京",45);//訪問對象屬性alert(u1.sno);alert(u1.sname);alert(u1.sage);//訪問一個對象的屬性,還可以使用這種語法var u2=new User(222,"沙溢",43);alert(u2["sno"]);alert(u2["sname"]);alert(u2["sage"]);Product=function (pno,pname,price) {//屬性this.pno=pno;this.pname=pname;this.price=price;//函數(shù)this.getPrice=function () {return this.price;}}var pro=new Product(123,"香蕉",2.4);alert(pro.pno+","+pro.pname+","+pro.price);//123,香蕉,2.4var pri=pro.getPrice();alert(pri);//2.4//Object的子類Product可以通過prototype這個屬性來給類動態(tài)擴展屬性以及函數(shù)。Product.prototype.getName=function () {return this.pname;}//調(diào)用后期擴展的getName()函數(shù)var pname=pro.getName();alert(pname);//香蕉//給String類型擴展一個函數(shù)String.prototype.suiyi=function () {alert("這是給Object的子類String類型擴展的suiyi函數(shù)");}"字符串".suiyi();//當(dāng)JS構(gòu)造函數(shù)的參數(shù)數(shù)量與屬性不一致,也可以調(diào),這是JS的弱類型。alert(new Product(189).pno+","+new Product(189).pname+","+new Product(189).price)//189,undefined,undefined</script>

(6)null

<script type="text/javascript">//null NaN undefined 數(shù)據(jù)類型不一致alert(typeof null);//Null類型 objectalert(typeof NaN);//Number類型 numberalert(typeof undefined);//Undefined類型 undefined//null和undefinedkey可以等同alert(null==NaN);//falsealert(null==undefined)//truealert(undefined==NaN)//false//JS當(dāng)中有兩個比較特殊的運算符//==(等同運算符:只判斷值是否相等)//===(全等運算符:既判斷值是否相等,又判斷數(shù)據(jù)類型是否相等)alert(null===NaN);//falsealert(1==true)//truealert(1===true)//false,1是Number類型,true是Boolean類型</script>

4. 事件

JS的常用事件:
* (1)blur失去焦點,focus獲得焦點;
* (2)change下拉列表選中項改變,或文本框內(nèi)容改變;
* (3)select文本被選定
* (4)load頁面加載完畢
* (5)click鼠標(biāo)單擊,dblclick鼠標(biāo)雙擊
* (6)keydown鍵盤按下,keyup鍵盤彈起
* (7)mousedown鼠標(biāo)按下,mouseover鼠標(biāo)經(jīng)過,mousemove鼠標(biāo)移動,mouseout鼠標(biāo)離開,mouseup鼠標(biāo)彈起
* (8)reset表單重置,submit表單提交
*
* 任何事件都會對應(yīng)一個事件句柄,事件句柄就是在事件前面加on,
* 事件句柄以屬性的形式存在

(1)事件注冊的2種方式:

<script type="text/javascript">function sayHello() {alert("hello,美好世界")}</script><!--注冊事件的第一種方式:直接在標(biāo)簽中使用事件句柄--><input type="button" value="hello" ondblclick="sayHello()"/><!--鼠標(biāo)雙擊出結(jié)果--><input type="button" value="hello2" id="mybtn"><input type="button" value="hello3" id="mybtn1"><input type="button" value="hello4" id="mybtn2"><script type="text/javascript">/** 第二種注冊事件的方式:使用JS代碼塊完成事件的注冊。* 第一步:先獲取這個按鈕對象(document和window一樣是全部小寫,內(nèi)置對象,可以直接用,document就代表整個HTML頁面)。* document代表瀏覽器窗口下的文本,window代表瀏覽器窗口。* 第二步:給按鈕對象的事件句柄屬性賦值* */function doSome() {alert("注冊事件的第二種方式")}//第一步:getElementById通過id獲取元素,document和window一樣//以后btnObj節(jié)點對象就代表<input type="button" value="hello2" id="mybtn">,可以調(diào)用其下屬性。var btnObj=document.getElementById("mybtn");//給按鈕onclick屬性賦值btnObj.onclick=doSome;//注意:別加小括號.doSome()錯誤寫法//這行代碼的含義是,將回調(diào)函數(shù)doSome注冊到click事件上var btnObj1=document.getElementById("mybtn1");btnObj1.onclick=function () {//這個函數(shù)沒有名字,叫做匿名函數(shù),這也是回調(diào)函數(shù)。alert("test..........")}document.getElementById("mybtn2").onclick=function () {alert("test22222...")}</script>

(2)代碼執(zhí)行順序

<body onload="ready()"><!--load事件是在頁面全部元素加載完畢之后才會發(fā)生--><script type="text/javascript">function ready() {//這個ready代表body οnlοad="ready()"document.getElementById("btn").onclick=function () {alert("hello JS!");}}</script><input type="button" value="hello" id="btn"/>

以后以下面代碼執(zhí)行

<body> <script type="text/javascript">/*把body里的onload直接放到JS代碼塊中*1.頁面打開時,將a函數(shù)注冊給了load事件,* 2.頁面加載完畢之后,load事件發(fā)生了,此時執(zhí)行回調(diào)函數(shù)a* 3.回調(diào)函數(shù)a執(zhí)行的過程中,把b函數(shù)注冊給了id="btn1"的click事件* 4.當(dāng)id="btn1"的節(jié)點發(fā)生click事件之后,b函數(shù)被調(diào)用并執(zhí)行。*/window.onload=function () {//這個回調(diào)函數(shù)加做adocument.getElementById("btn1").onclick=function () {//這個回調(diào)函數(shù)叫做balert("hello 你好");}}//下面的window需要重新建一個,懶得建了,不允許2個重復(fù)的,否則后面覆蓋前面window.onload=function () {document.getElementById("btn3").onclick=function () {var mytext=document.getElementById("btn2");//一個節(jié)點對象中只要有的屬性都可以"."mytext.type="checkbox";}} </script> <input type="button" value="hello2" id="btn1"/><input type="text" id="btn2"/> <input type="button" value="將文本框修改為復(fù)選框" id="btn3"/> </body>

(3)捕捉鍵盤keydown事件

<script type="text/javascript">window.onload=function () {var usernameElt=document.getElementById("username")//回車鍵的值是13,ESC鍵的鍵值是27usernameElt.onkeydown=function (event) {//獲取鍵值//對于“鍵盤事件對象”來說,都有keyCode屬性用來獲取鍵值alert(event);//object KeyboardEventalert(event.keyCode);//13. 回車鍵的值是13if(event.keyCode==13){alert("正在進行驗證.....")}}}</script>

(4) void運算符

<head><meta charset="UTF-8"><title>JS的void運算符</title> </head> <body> <!---void運算符的語法:void(表達式)運算原理:執(zhí)行表達式,但不返回任何結(jié)果。javascript:void(0)其中javascript:作用是告訴瀏覽器后面是一段JS代碼,以下程序的javascript:是不能省略的,否則href會把雙引號里當(dāng)做路徑處理。 ---><a href="javascript:void(100)" onclick="window.alert('test code')">既保留住超鏈接的樣式,同時用戶點擊該超鏈接的時候執(zhí)行一段JS代碼,但頁面還不能跳轉(zhuǎn)。</a> </body>

(5) 控制語句

<head><meta charset="UTF-8"><title>JS的控制語句</title> </head> <body><script type="text/javascript">/*1.if語句 2.switch 3.while 4.do...while..* 5.for循環(huán) 6.break語句 7.continue語句* 8.for...in語句 9.with語句* *///創(chuàng)建JS數(shù)組,數(shù)據(jù)類型不統(tǒng)一,元素的個數(shù)隨意var arr=[false,true,1,2,"abc",3.12];//遍歷數(shù)組for(var i=0;i<arr.length;i++){alert(arr[i]);}//for..in,數(shù)組下標(biāo)for(var i in arr){alert(i);alert(arr[i]);}//for..in語句可以遍歷對象的屬性User=function (username,password) {this.username=username;this.password=password;}var u=new User("張三","123");alert(u.username+","+u.password);//張三,123alert(u["username"]+","+u["password"]);//張三,123for(var shuXinMing in u){alert(shuXinMing)//username password 屬性名alert(typeof shuXinMing)//string string shuXinMing是一個字符串alert(u[shuXinMing])//張三 123 本身就是string類型,不需要加“”}with(u){//u代替了u.username中的ualert(username+","+password)}</script> </body> </html>

總結(jié)

以上是生活随笔為你收集整理的JS基础篇2:的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。