說明
XQTypeScriptFramework 隸屬于 XQFramework 下 JS 基礎(chǔ)性框架部分
XQFramework 勵志將開發(fā)將常用開發(fā)語言 基礎(chǔ)性框架 統(tǒng)一匯總肚吏,為全站開發(fā)使用到的基礎(chǔ)語法進行統(tǒng)一,拜托不同語言間基礎(chǔ)語法不一致的痛點狭魂,讓全站開發(fā)門更加的便捷罚攀,若XQFramework有不足之處党觅,誠心聆聽大佬們的寶貴意見對 XQFramework 進行升級改造
安裝
npm install xq-type-script-framework
使用
全部引入
一般在入口文件中:
import "xq-type-script-framework"
擴展匯總
- Array
- Date
- Object
- String
擴展部分使用示例
注:整個 xq-type-script-framework 處理 NULL 指針,開發(fā)過程中無需為 NULL 指針做處理
// 判斷是否為空
["iOS", "Android"].xq_isNull(); // false
// 判斷是否為空
"XQFramework".xq_isNull(); // false
// 獲取第一個對象
["iOS", "Android"].xq_firstElement(); // "iOS"
// 獲得純文件名斋泄,帶后綴
"https://avatars.githubusercontent.com/u/22712251.png".xq_lastPathComponent(); // 22712251.png
擴展明細
- Array 擴展方法
/**
* 數(shù)組擴展工具類
*/
interface Array< T > {
/**
* 獲取第一個元素
*/
xq_firstElement(): T | undefined;
/**
* 獲取最后一個元素
*/
xq_lastElement(): T | undefined;
/**
* 添加一個元素
* @param obj 元素
*/
xq_addElement(obj: T): void;
/**
* 添加一組元素
* @param objs 元素
*/
xq_addElements(objs: T[], index: number): void;
/**
* 插入一個元素
* @param obj 元素
* @param index 添加元素的位置下標 默認數(shù)組的尾部
*/
xq_insertElement(obj: T, index: number): void;
/**
* 插入一組元素
* @param objs 元素
* @param index 添加元素的位置下標 默認數(shù)組的尾部
*/
xq_insertElements(objs: T[], index: number): void;
/**
* 刪除指定元素
* @param obj 元素
*/
xq_removeElement(obj: T) : void;
/**
* 獲取元素下標
* @param obj 元素
*/
xq_indexOfElement(obj: T): number;
/**
* 刪除指定下標元素
* @param index 下標
*/
xq_removeElementAtIndex(index: number) : void;
/**
* 數(shù)組是否包含某個元素
* @param obj
*/
xq_containsObject(obj: T): boolean;
/**
* 清除數(shù)組
*/
xq_clean(): void;
}
- 日期擴展方法
/**
* Date 擴展工具類
*/
interface Date {
/**
* 時間格式化 yyyy-MM-dd HH:mm:ss
*/
xq_format_yyyy_MM_dd_HH_mm_ss() : string;
/**
* 時間格式化 yyyy-MM-dd
*/
xq_format_yyyy_MM_dd() : string;
/**
* 時間格式化 MM-dd HH:mm
*/
xq_format_MM_dd_HH_mm() : string;
/**
* 時間格式化 HH:mm:ss
*/
xq_format_HH_mm_ss() : string;
/**
* 時間格式化 HH:mm
*/
xq_format_HH_mm() : string;
/**
* 時間格式化
* @param fmt 時間格式化格式
*/
xq_format(fmt : string) : string;
}
- Object擴展方法
/**
* 類 擴展工具類
*/
interface Object {
// 是否為空
xq_isNull() : boolean;
// 是否不為空
xq_isNotNull() : boolean;
}
/**
* 類 擴展工具類
*/
interface Object {
/**
* 模擬深拷貝
* @param obj 拷貝對象
*/
xq_deepClone(obj: any) : any;
}
- String 擴展方法
/**
* 擴展工具類
*/
interface String {
/**
* 唯一標識
*/
xq_GUID() : string;
}
/**
* 擴展工具類
*/
interface String {
/**
* 是否是電話號碼
*/
xq_isPhone() : boolean;
/**
* 是否是數(shù)字
*/
xq_isNumber() : boolean;
}
/**
* 字符串 擴展工具類
*/
interface String {
/**
* 獲得純文件名杯瞻,帶后綴
*/
xq_lastPathComponent() : string | undefined ;
/**
* 獲得文件路徑,不帶后綴
*/
xq_stringByDeletingPathExtension() : string | undefined ;
/**
* 獲得文件后綴
*/
xq_pathExtension() : string | undefined ;
}
/**
* 字符串 擴展工具類
*/
interface String {
/**
* 去掉多余空格
*/
xq_removeSpace() : string | undefined ;
/**
* 強轉(zhuǎn)string(包含空字符串),并去掉多余空格
*/
xq_removeSpaceWithEmpty() : string | undefined ;
}