harmony-utils之ObjectUtil,對(duì)象工具類
harmony-utils 簡(jiǎn)介與說(shuō)明
[harmony-utils] 一款功能豐富且極易上手的HarmonyOS工具庫(kù),借助眾多實(shí)用工具類,致力于助力開發(fā)者迅速構(gòu)建鴻蒙應(yīng)用。其封裝的工具涵蓋了APP、設(shè)備、屏幕、授權(quán)、通知、線程間通信、彈框、吐司、生物認(rèn)證、用戶首選項(xiàng)、拍照、相冊(cè)、掃碼、文件、日志、異常捕獲、字符、字符串、數(shù)字、集合、日期、隨機(jī)、base64、加密、解密、JSON等一系列的功能和作,能夠滿足各種不同的開發(fā)需求。
[picker_utils] 是harmony-utils拆分出來(lái)的一個(gè)子庫(kù),包含 PickerUtil、PhotoHelper、ScanUtil。
下載安裝ohpm i @pura/harmony-utils
ohpm i @pura/picker_utils
//全局初始化方法,在UIAbility的onCreate方法中初始化 AppUtil.init()
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
AppUtil.init(this.context);
}
API方法與使用
getHash 獲取對(duì)象的Hash值
let user: User = new User();
let hash1 = ObjectUtil.getHash(user);
getClassName 獲取對(duì)象的Class名稱
let user: User = new User();
let name1 = ObjectUtil.getClassName(user);
getMethodsNames 獲取對(duì)象的所有方法名
let user: User = new User();
let methodsNames1 = ObjectUtil.getMethodsNames(this.user);
isString 判斷是否是String
let user: User = new User();
let obj: String = new String("abcd@1234");
let bl1 = ObjectUtil.isString(user);
let bl2 = ObjectUtil.isString(obj);
isNull 判斷對(duì)象是否為空
let user: User = new User();
let bl1 = ObjectUtil.isString(user)
isEmpty 判斷屬性內(nèi)容是否為空
let user: User = new User();
let obj: String = new String();
let bl1 = ObjectUtil.isEmpty(user);
let bl2 = ObjectUtil.isEmpty(obj);
shallowCopy 淺拷貝
let user: User = new User();
let user1 = ObjectUtil.shallowCopy(user);
deepCopy 深度拷貝對(duì)象
let user: User = new User();
let user2: User = ObjectUtil.deepCopy(user);
assign 合并兩個(gè)或多個(gè)對(duì)象
let user: User = new User();
let obj1: Record< string, Object > = { "xx_age": 20, "xx_name": "張呵呵" };
let obj2: Record< string, Object > = { "my_age": 20, "my_name": "張叁三" };
let user3 = ObjectUtil.assign(obj1, obj2, user);
objToClass obj轉(zhuǎn)class,解決obj as class后丟失方法的問(wèn)題
let user: User = new User();
let user4 = ObjectUtil.objToClass(User, user);
deleteRecord 刪除Record中的元素
let record: Record< string, Object > = { "name": "張若楠", "age": 18, "work": "演員", "addr": "上海市" };
let recordStr = JSON.stringify(record);
ObjectUtil.deleteRecord(record,"work");
getValue 通過(guò)key獲取對(duì)象值
let user: User = new User();
let name = ObjectUtil.getValue< string >(user, "name");
setValue 給對(duì)象obj動(dòng)態(tài)添加或者修改屬性
let user: User = new User();
ObjectUtil.setValue(user, "name", "張若喃");
ObjectUtil.setValue(user, "work", "女演員啊");
ObjectUtil.setValue(user, "job", "女演員");
創(chuàng)作不易,請(qǐng)給童長(zhǎng)老點(diǎn)贊
審核編輯 黃宇
-
HarmonyOS
+關(guān)注
關(guān)注
80文章
2126瀏覽量
33086
發(fā)布評(píng)論請(qǐng)先 登錄
評(píng)論