本文整理汇总了TypeScript中tns-core-modules/utils/types.getClass函数的典型用法代码示例。如果您正苦于以下问题:TypeScript getClass函数的具体用法?TypeScript getClass怎么用?TypeScript getClass使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了getClass函数的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: Error
export function assertEqual<T extends { equals?(arg: T): boolean } | any>(actual: T, expected: T, message: string = '') {
if (!types.isNullOrUndefined(actual)
&& !types.isNullOrUndefined(expected)
&& types.getClass(actual) === types.getClass(expected)
&& types.isFunction(actual.equals)) {
// Use the equals method
if (!actual.equals(expected)) {
throw new Error(`${message} Actual: <${actual}>(${typeof (actual)}). Expected: <${expected}>(${typeof (expected)})`);
}
}
else if (actual !== expected) {
throw new Error(`${message} Actual: <${actual}>(${typeof (actual)}). Expected: <${expected}>(${typeof (expected)})`);
}
}
示例2: deserialize
export function deserialize(value) {
if (value === null || typeof value !== 'object') {
return value;
}
let store;
switch (types.getClass(value)) {
case 'java.lang.String': {
return String(value);
}
case 'java.lang.Boolean': {
return Boolean(value);
}
case 'java.lang.Integer':
case 'java.lang.Long':
case 'java.lang.Double':
case 'java.lang.Short': {
return Number(value);
}
case 'org.json.JSONArray': {
store = new Array();
for (let j = 0; j < value.length(); j++) {
store[j] = deserialize(value.get(j));
}
break;
}
case 'org.json.JSONObject': {
store = new Object();
let i = value.keys();
while (i.hasNext()) {
let key = i.next();
store[key] = deserialize(value.get(key));
}
break;
}
default:
store = null;
}
return store;
}