前端小知識點總結(持續更新)

2021-10-09 20:43:49 字數 3381 閱讀 3197

封裝成function

function

dateformat

(time

)dateformat

(date.

now())

;//"2020-09-28 11:33:17"

只取年月日(注意格式),date.now()取得當前時間戳,new date(date.now()).tolocaledatestring()----「2020/9/28」

new

date

(date.

now()+

8*3600000).

toisostring()

.substring(0

,10)//"2020-09-28"

ps:new date()物件中有很多日期格式的函式,可以自己看看適合的

var str="』"+arr.join(",")+"』";

遍歷分為遍歷物件和遍歷陣列,又可以分為遍歷鍵值和遍歷值

首先,map()和foreach()是array自帶的方法,map物件也有foreach()方法,而for…in和for…of是對陣列/類陣列元素進行for迴圈操作的方法。

也就是說,在使用map()和foreach()的時候,需要用陣列呼叫

map()和foreach()包含的匿名函式都是三個引數(item,index,input)(當前項,當前項的索引,原始陣列)

map方法

map只能遍歷陣列,不能遍歷物件,map 遍歷的時候必須要有 return

如果陣列本身是普通物件(如,number、string等)那麼即使在 map中做了改變自己屬性的操作也是無法生效的,如果陣列本身是個物件,那麼被改變的屬性就會在原物件中生效

const arr =[11

,12,13

];const b = arr.

map(

i=>

)console.

log(arr,b)

;// arr = [11, 12, 13];

// b = [22, 24, 26];

const arr =[,

];const b = arr.

map(

i=>

)console.

log(arr,b)

;// arr = [, ];

// b = [, ];

foreach方法

foreach只能遍歷陣列,不能遍歷物件,沒有return屬性,只有迴圈的作用,不能改變原先物件的屬性,相當於 for() 迴圈

const arr =[11

,12,13

];const b = arr.

foreach(i

=>

)console.

log(arr,b)

;// arr = [11, 12, 13];

// undefined

for…of 方法

foreach只能遍歷陣列,不能遍歷物件,只有迴圈的作用,不能改變原先物件的屬性

for of 不同於 foreach, 它可以與 break、continue和return 配合使用,也就是說 for of 迴圈可以隨時退出迴圈

如果物件也想用該方法遍歷, 可以使用 object.keys() 獲取物件的 key值集合後,再使用 for of

const arr =[11

,12,13

];for(

let i of arr)

// 11, 12, 13

const arr =

for(

let i of object.

keys

(arr

)// 11, 12, 13

for…in 方法

這個方法也是乙個遍歷的方法,和上面三種不一樣的是,他不是遍歷值,他是遍歷鍵值,即屬性名

如果是陣列,則返回下標,如果是物件,則返回物件的鍵值

for in 迴圈會以任意順序遍歷鍵名

const arr =[11

,12,13

];for(

let i in arr)

// 0, 1, 2

const arr =

;for

(let i in arr)

//前端遍歷map集合:var map=

for(

var prop in map)

}//a, b, c

(1)例1:隨機生成指定位數的字母數字、組合字串可選擇字母大小寫(簡單),但有缺陷,存在不能完全包含大小寫字母和數字的可能;

$rootscope.randomstring ="";

$scope.

_getrandomstring

=function

(len

) pwd.

tolowercase()

; $rootscope.randomstring = pwd+num;

//不太理解為啥加這行

return pwd;

}改進1.1:

/** * 生成隨機密碼,必包含大寫小寫數字

* @param length,生成隨機密碼長度

* @param arr,生成密碼字串陣列,預設大寫,小寫,數字

* @return 返回生成的密碼字串

*/function

randpassword

(length, passwordarray

)for

(var i =

0; i < length; i++

)return password;

}console.

log(

'生成的密碼:'

,randpassword(6

));//**:

注:注意使用隨機數的隨機

(2)例2:js實現隨機生成複雜字串,要求必須大於等於6位字元,必須包含大小寫字母、數字和特殊字元

/**

* 產生指定長度隨機字母數字特殊字元組合(此方法因為生產的字串中必須包含

* 大小寫字母、數字和特殊字元,所以最短長度都是4)

* @param strlength 指定生成字串的長度

* @returns

*/varrandomword

=function

(strlength)}

for(

let i =

0; i < range; i++

)return str;

}

web小知識點 持續更新

css修改tr的邊框 如果直接修改tr的border屬性是沒有反應的 需要在table中加一句話 table js獲取dom節點 childnodes 得到s的全部子節點 parentnode 得到s的父節點 nextsbiling 獲得s的下乙個兄弟節點 previoussbiling 得到s的上...

MySQL小知識點 持續更新

1.檢視建立表的sql語句 show create table table name g 2.檢視表的字段資訊 show full columns from table name 獲取以下資訊 field 欄位名 type 字段型別 collation 字符集 null 是否可以為null key ...

知識點(筆記,持續更新)

一 常用標頭檔案 1 include c 演算法庫 algorithms library 為 c 程式提供了大量可以用來對容器及其它序列進行演算法操作的函式。這些元件可以為函式或函式模板,大部份由標頭檔案 提供。2 向量 vector 是一種物件實體,能夠容納許多其他型別相同的元素,因此又被稱為容器...