摘要:參數(shù)對(duì)象數(shù)組,需要排序的目標(biāo)要按排序的對(duì)象屬性名稱排序的方向,為從小到大是否使用模式,默認(rèn)為,注意,使用該參數(shù)時(shí)前面的必須傳入。使用場(chǎng)景想要排列一個(gè)對(duì)象數(shù)組,條件是根據(jù)這些對(duì)象中的某個(gè)屬性。
cdd-lib
個(gè)人常用庫(kù)積累
說(shuō)明本庫(kù)是完全的es2015模塊語(yǔ)法,也使用了ts源碼。所以使用commonjs方式導(dǎo)致不可用。
路徑和引用說(shuō)明/index.js
根路徑的index.js文件為node_modules對(duì)外輸出的文件,是es6模塊方式。
/dist
在dist文件夾里有集成的es6,cjs,umd,borowser方式的文件。
browser.js,umd供瀏覽器或者amd,cjs使用。
main.cjs.js, commmonjs模式。
module.es.js, es6模式。
安裝npm i cdd-libTime
類
實(shí)例屬性與方法
constructor
interface $time { duration?: number everyDuration?: null | Function dateSeparator?: string timeSeparator?: string final?: null | Function finally?: null | Function times?: number date:any }
declare function _Time(): $time;//構(gòu)造函數(shù) declare interface $time {//time實(shí)例 isRuning: boolean//實(shí)例現(xiàn)在的運(yùn)行狀態(tài) hour: number//小時(shí) minutes: number//分鐘 seconds: number//秒 year: number//年 times:numer//執(zhí)行timeout時(shí)倒數(shù)執(zhí)行的次數(shù) month: number//月 day: number//日期 stamp:number//創(chuàng)建是的時(shí)間戳 duration:number//間隔毫秒數(shù)默認(rèn)1000 dateSeparator: string//日期分隔符默認(rèn)- timeSeparator: string//時(shí)間分隔符默認(rèn): date: string//日期 time: string//時(shí)間 ap: string//上午還是下午AM PM start(): any//開(kāi)始循環(huán)執(zhí)行 stop(): any//結(jié)束循環(huán)執(zhí)行 everyDuration?(parms?: any): any//每次執(zhí)行的函數(shù) timeout.timeout():any//倒數(shù)執(zhí)行的函數(shù) final():cb倒數(shù)執(zhí)行完時(shí)執(zhí)行的回到函數(shù) }limitText
限制一段文字的長(zhǎng)短并添加符號(hào),類似String的padEnd,但是該方法是限制和替代而不是補(bǔ)全。
用法:
limitText(str:string,limit:10,rep:".")
eg:
let str = "你好啊,想要去那里,我想去一個(gè)好地方" limitText(str)//=>你好啊,想要去...htmlEscap
對(duì)輸入的文字進(jìn)行轉(zhuǎn)義防止注入攻擊的函數(shù)
deepClone深層復(fù)制一個(gè)對(duì)象
雖然現(xiàn)在已經(jīng)有了Object.assign這樣的原生方法,但是有些地方還是要用到自己寫(xiě)的。
用法:
deepClone(obj|array)//=>新的 obj|array
該方法不會(huì)拷貝原型的屬性。
addThrottle對(duì)元素的某個(gè)對(duì)象的事件添加節(jié)流閥
使用方法:
addThrottle({el, event, handler, model?=0, threshold?=250})
參數(shù):
el:element對(duì)象
event:事件名稱
handler:監(jiān)聽(tīng)器處理函數(shù)默認(rèn)參數(shù)為e即事件對(duì)象
model: 節(jié)流閥的模式,0為間隔模式(每次停止時(shí)再執(zhí)行),1為頻率模式(比如threshold為250,則每秒發(fā)生4次。)
threshold?:可選的臨界值,數(shù)字,默認(rèn)是250(目前是指定事件發(fā)生的間隔)
如果移除這個(gè)監(jiān)聽(tīng)的話直接使用元素對(duì)象的removeEvnetListener(event:string)就行了。
checkType 方法有isString
isNumber
isBoolean
isFunction
isNull
isUndefined
isObj
isArray
isDate
isRegExp
isSymbol
isPromise
isSet
isNaN
isFalse
isTrue
isIos
isPc
browserTypeIE11|Edge|FF|Opera|Safari|Chrome
CheckStr(str,type)常用驗(yàn)證
type
phone 手機(jī)
tel 座機(jī)
card 身份證號(hào)
pwd 密碼/字母開(kāi)頭長(zhǎng)度6-18,只能包含字母數(shù)字下劃線
postal 郵政
email 郵箱
QQ qq號(hào)
URL 網(wǎng)址
money 小數(shù)點(diǎn)兩位金額
IP ip地址
date 日期
english 英文
chinese 中文
lower 小寫(xiě)
upper 大寫(xiě)
HTML html標(biāo)簽
isCardID(sid) 嚴(yán)格身份證
parseTime解析2018-12-12 12:12:12或者2018-12-12此類的文字為Date對(duì)象。
sortObj/sortObjArraysortObj(舊)仍然可用,sorObjArray(新名字)。
sortObj/sortObjArray( arr:[obj], property:string|[string|{[prope:string]:boolean}], order:boolean = true, isPromise:boolean=false ):[objSorted]
參數(shù):
arr:[obj] 對(duì)象數(shù)組,需要排序的目標(biāo)
property:string|[string|{[prope:string]:boolean}] 要按排序的對(duì)象屬性名稱
order:string|boolen 排序的方向,true為從小到大s
isPromise:boolean = false 是否使用Promise模式,默認(rèn)為false,注意,使用該參數(shù)時(shí)前面的order必須傳入。
使用場(chǎng)景1 想要排列一個(gè)對(duì)象數(shù)組,條件是根據(jù)這些對(duì)象中的某個(gè)屬性。
var seed = [ {name:"aaac",age: 12 }, {name:"ecc",age: 12 }, {name:"bccd",age: 12 }, {name:"wds",age: 12 }, {name:"esds",age: 12 }, {name:"esds",age: 9}, ]; // 根據(jù)名字從小到da排序 sortObjArrary(seed,"name") // 根據(jù)名字從大到小排序 sortObjArrary(seed,"name",false)
2 還是排序上面的數(shù)據(jù),要求是,根據(jù)名字排序,如果名字相同則根據(jù)年齡排序
// 名字相同時(shí)根據(jù)年齡從小到大排序 sortObjArray(seed,["name","age"]) // 或者 sortObjArray(seed,["name",{age:true}]) // 名字相同時(shí)根據(jù)年齡從大到小排序 sortObjArray(seed,["name",{age:false}])
返回排序后的新的數(shù)組
對(duì)于對(duì)象數(shù)組根據(jù)其屬性進(jìn)行排序的方法
download(url:string)下載文件
createDom(template:string)創(chuàng)建dom
createRandowWrods(length:number=15)生成指定長(zhǎng)度的文字,最低為5個(gè)
clipFileExts(filename:string,keepDot:boolean=false)截取文件的后綴名
filename:文件名字
keepDot:是否保持點(diǎn)".",默認(rèn)為false
小程序請(qǐng)求,結(jié)合promise使用axios風(fēng)格
interface $request { (url: string | anyObj | $reqSet, config?: anyObj): PromisewxStore2get?(url: string, config?: any): Promise post?(url: string, data?: anyObj, config?: any): Promise put?(url: string, data?: anyObj, config?: any): Promise head?(url: string, config?: any): Promise options?(url: string, config?: any): Promise delete?(url: string, config?: any): Promise interceptors?: { request: { use(a: $interRequest, b?: $interRequesError): any }, response: { use(handle: $interResponse): any } } [name: string]: any }
小程序中store2風(fēng)格的本地存儲(chǔ)
interface wxStore2 { (key?: any, data?: any): PromisecamelToUnderline 駝峰轉(zhuǎn)下劃線| void get(key: string): any set(key: string, data: any): any transact(key: string, data: Function): any clear(): void has(key: string): boolean remove(key: string): any getAll(): anyObj add(key: string, data: any): any keys(): any size(): number clearAll(): void isPromise: boolean nameSpace: string | undefined create(): $store2 }
camelToUnderline(str:string,sperator?="_"):stringunderlineToCamel 下劃線轉(zhuǎn)駝峰
underlineToCamel(str:string):string樣式
新整理了樣式關(guān)系
base-config.styl
基礎(chǔ)的設(shè)置,如顏色尺寸什么的。
theme.styl
風(fēng)格主題
lib.styl
主要是一些函數(shù)
mixins.styl
mixin的一些樣式
reset.styl
瀏覽器樣式重置
index.styl
包含上述所有
libmix.styl
包含上述除了reset.styl和index.styl之外的所有。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/97721.html
摘要:閉包的理解使用閉包主要是為了設(shè)計(jì)私有的方法和變量。只在中存放不敏感數(shù)據(jù),即使被盜也不會(huì)有重大損失。每個(gè)最多只能有條,每個(gè)長(zhǎng)度不能超過(guò),否則會(huì)被截掉。有些狀態(tài)不可能保存在客戶端。例如,為了防止重復(fù)提交表單,我們需要在服務(wù)器端保存一個(gè)計(jì)數(shù)器。 閉包的理解 使用閉包主要是為了設(shè)計(jì)私有的方法和變量。 優(yōu)點(diǎn)是可以避免全局變量的污染, 缺點(diǎn)是閉包會(huì)常駐內(nèi)存,會(huì)增大內(nèi)存使用量,使用不當(dāng)很容易造成內(nèi)存...
摘要:閉包的理解使用閉包主要是為了設(shè)計(jì)私有的方法和變量。只在中存放不敏感數(shù)據(jù),即使被盜也不會(huì)有重大損失。每個(gè)最多只能有條,每個(gè)長(zhǎng)度不能超過(guò),否則會(huì)被截掉。有些狀態(tài)不可能保存在客戶端。例如,為了防止重復(fù)提交表單,我們需要在服務(wù)器端保存一個(gè)計(jì)數(shù)器。 閉包的理解 使用閉包主要是為了設(shè)計(jì)私有的方法和變量。 優(yōu)點(diǎn)是可以避免全局變量的污染, 缺點(diǎn)是閉包會(huì)常駐內(nèi)存,會(huì)增大內(nèi)存使用量,使用不當(dāng)很容易造成內(nèi)存...
摘要:閉包的理解使用閉包主要是為了設(shè)計(jì)私有的方法和變量。只在中存放不敏感數(shù)據(jù),即使被盜也不會(huì)有重大損失。每個(gè)最多只能有條,每個(gè)長(zhǎng)度不能超過(guò),否則會(huì)被截掉。有些狀態(tài)不可能保存在客戶端。例如,為了防止重復(fù)提交表單,我們需要在服務(wù)器端保存一個(gè)計(jì)數(shù)器。 閉包的理解 使用閉包主要是為了設(shè)計(jì)私有的方法和變量。 優(yōu)點(diǎn)是可以避免全局變量的污染, 缺點(diǎn)是閉包會(huì)常駐內(nèi)存,會(huì)增大內(nèi)存使用量,使用不當(dāng)很容易造成內(nèi)存...
摘要:定義表格中的表注內(nèi)容腳注樣式節(jié)標(biāo)簽描述屬性定義文檔的樣式信息。原始值是由從對(duì)象下來(lái)的所有對(duì)象繼承的。方法通常由在后臺(tái)自動(dòng)進(jìn)行調(diào)用,而不是顯式地處于代碼中。 HTML常用標(biāo)簽 其實(shí)在w3school上都有詳細(xì)的總結(jié)和描述,寫(xiě)在這里是為了理清自己的思路,整理比較常用的標(biāo)簽。原地址:http://www.w3school.com.cn/ta... //tag 基礎(chǔ)...
閱讀 973·2021-11-22 13:53
閱讀 2605·2021-10-15 09:40
閱讀 1090·2021-10-14 09:42
閱讀 3927·2021-09-22 15:59
閱讀 965·2021-09-02 09:47
閱讀 2542·2019-08-30 15:54
閱讀 1505·2019-08-29 17:14
閱讀 464·2019-08-29 15:15