Js第三天筆記(陣列,函式,物件)

2021-10-24 17:17:27 字數 4899 閱讀 1063

js的一種資料結構,存放資料的。說白了就是一組資料就叫做陣列

// 陣列的建立方式

// 1.new方法建立

var arr1 =

newarray()

;// 2.字面量方法建立

var arr2 =

;

陣列通過**下標(索引)**來訪問陣列裡面的資料和賦值

*注意的是陣列的下標是從0開始的

// 1.new方法建立

var arr1 =

newarray()

; arr1[0]

=1arr1[1]

='zs'

console.

log(arr1)

;//[1, "zs"]

訪問陣列的資料需要通過陣列的下標訪問,由0開始

var arr1 =

newarray()

; arr1[0]

=1arr1[1]

='zs'

console.

log(arr1)

;//[1, "zs"]

console.

log(arr1[0]

, arr1[1]

);//1 "zs"

屬性1:arr.length(陣列的長度)

var arr1 =

newarray()

; arr1[0]

=1arr1[1]

='zs'

console.

log(arr1.length)

;//2

遍歷陣列元素

var arr =

['zs'

,'lhh'

,'hmm'

,100,99

,34]// 1.用長度遍歷

for(

var i =

0; i < arr.length; i++

)// 2.for in 迴圈遍歷

for(

var k in arr)

氣泡排序

// 氣泡排序

var a =[2

,6,1

,77,52

,25,7

];var b =0;

for(i =

0; i < a.length; i++

)// 如果小則不變位置}}

console.

log(a)

;

函式就是把解決某一問題的方法,函式封裝就是把解決一類問題的方法寫乙個模板,可以重複使用

// 函式的3種主要建立方法

// 1.函式宣告

function

functionname

(行參)

// 2.函式表示式

varx

=function

(a, b)

;// 3.function() 建構函式

var myfunction =

newfunction

("a"

,"b"

,"return a * b");

var x =

myfunction(4

,3);

返回值概念:函式執行完後,可以把執行的結果 通過 return 語法 返回給呼叫者

注意:retrun 後的**不被執行

1. 函式返回值

functionfn(

)console.

log(fn(

));// 如果沒有return 返回的值是 undefined

2. 函式形參和實參 數量可以不一定匹配

function

getsum

(x, y, z)

console.

log(

getsum(1

,2,3

));// 6

console.

log(

getsum(1

,2,3

,4))

;// 6

console.

log(

getsum(1

,2))

;// nan

arguments物件中儲存了傳遞的所有的實參。arguments是乙個偽陣列(沒有push,pop,un****,****等操作),因此及可以進行遍歷。

function

max(

)// 如果小則不變位置}}

return

(arguments[arguments.length -1]

);}var a =

max(2,

6,1,

77,52,

25,7)

; console.

log(a)

;

定義後直接執行的函式,可以防止命名衝突,因為區域性變數都是在函式使用是生效,函式結束時銷毀的

注意寫法

(

function()

)();

區域性變數

預解析過程

執行過程

1.物件是一類事物的例項,即是類的例項

2.物件裡的資料是對物件特徵的描述,也是抽象的表達

3.所以物件可以由鍵值對的形式描述

// 1.字面量直接創捷

var star =

} console.

log(

'我的偶像'

+ star.name + star[

'***']+

'是乙個才子'

) star.

work()

;// 2.new方法創捷

var obj =

newobject()

obj.name =

'雪中'

; obj.writer =

'總管'

; obj.num =

120000

; obj.

sale

=function()

console.

log(obj)

console.

log(obj.name)

obj.

sale

()

注意:以鍵值對寫入一組資料的時候不同的資料之間要使用逗號分隔,而在new方法中,用逗號和分號間隔在vscode縮排表示方法不同

因為是以鍵值對的形式儲存,所以可以通過訪問鍵得到他的值

對於鍵的訪問就有兩種方式

obt[『key』]

obt.key

值得注意的是,物件用中括號去訪問的時候,必須加上引號,也就是說必須是乙個string的資料

var star =

} console.

log(star.***)

;//男

console.

log(star[name]);

//undefined

console.

log(star[

'name'])

;//許嵩

遍歷物件元素

var obj =

console.

log(obj.length)

;// undefined

for(

var k in obj)

對於陣列和物件來說,它們都是儲存大批資料的一種結構(因為基本的資料結構沒辦法滿足我們的需求),所以歸根結底他們都是一種特殊的方式儲存資料。那麼針對特殊的方式我們肯定有特殊的方法,這也就延伸出相關的陣列的方法和物件的方法,理解這些方法和操作就需要我們結合實際需求。畢竟創造這些方法就是為了服務我們對這些資料的處理嘛

對於函式,就是我們把解決問題的方法模組封裝起來,這需要我們的歸納總結能力,而函式裡面的一些屬性,比如arguments物件就是方便我們去抽象引數的。而return就是我們使用函式的實質意義——獲取經過函式處理過的結果。這個結果可以被我們使用其實這就是為什麼說函式可以當作乙個變數去使用。

在物件裡面,我們不僅可以自己構造物件,js也幫我們封裝了一些內建物件,這些物件也是為了方便我們解決一些需求。在下一天的筆記整理當中,我們對於這些內建物件進行分析。從實際應用的角度去**他們的共性和差異。

js物件導向第三天

函式也是物件 函式也是通過類來建立的,通過function來建立函式物件 函式是比較特殊的物件,函式的宣告是引用資料型別,通過function類建立乙個函式 new function 可以建立出來的乙個匿名物件 通過function類建立物件 函式是物件,物件是屬性的無序集合 常用的屬性 argum...

第三天 筆記

day03 運算子 1,單目運算子 運算元只有乙個的.比如 1 1 2,雙目運算子 運算元為兩個的.比如 1 2 3,三目運算子 運算元有三個.算數運算子 取餘 正負性的資料僅與第乙個運算元正負性一致 小括號優先順序最高.特點 1,什麼樣地資料型別相互運算,其結果還是什麼資料型別 自動型別轉換 由小...

第三天筆記

python資料型別學習 了解python的基本概念,表示式 語句 函式等,知道什麼是識別符號,有哪些注意事項,要怎麼去用,命名的規則,python有哪些關鍵字。關於python的資料型別大概有哪些,簡單的用法。重點學習了字串,什麼是字串,字串怎麼用,拼接 格式化 佔位符等具體怎麼操作。最後是變數的...