想用ts的反射知道object的属性,和类型,比如
import hilog from '@ohos.hilog';
let hilogPropertyNames = Object.keys(hilog);
hilog.info(0x0000, 'testTag', `属性数量: ${hilogPropertyNames.length} 名称:${hilogPropertyNames} 类型:${typeof hilog[hilogPropertyNames[0]]}`);
然后就得到了:
属性数量: 1 名称:LogLevel 类型:function
hilog是这样的,所以就感觉数量和类型都不对;
declare namespace hilog {
function debug(domain: number, tag: string, format: string, ...args: any[]): void;
function info(domain: number, tag: string, format: string, ...args: any[]): void;
function warn(domain: number, tag: string, format: string, ...args: any[]): void;
function error(domain: number, tag: string, format: string, ...args: any[]): void;
function fatal(domain: number, tag: string, format: string, ...args: any[]): void;
function isLoggable(domain: number, tag: string, level: LogLevel): boolean;
enum LogLevel {
DEBUG = 3,
INFO = 4,
WARN = 5,
ERROR = 6,
FATAL = 7
}
}
|