trtc-electron-sdk
Version:
trtc electron sdk
50 lines (49 loc) • 1.35 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.convertUint8ArrayToNumber = exports.safelyParse = exports.isNullOrUndefined = exports.isUndefined = exports.isNull = void 0;
function isNull(val) {
return val === null;
}
exports.isNull = isNull;
function isUndefined(val) {
return val === undefined;
}
exports.isUndefined = isUndefined;
function isNullOrUndefined(val) {
return val === null || val === undefined;
}
exports.isNullOrUndefined = isNullOrUndefined;
/**
* 安全执行 JSON.parse
* @param data
* @returns
*/
function safelyParse(data) {
if (typeof data !== 'string') {
return data;
}
let result;
try {
const tempData = JSON.parse(data);
// 规避 JSON.parse('12345') 转化为 12345 的情况
if (typeof tempData === 'object' && tempData) {
result = tempData;
}
else {
result = data;
}
}
catch (error) {
result = data;
}
return result;
}
exports.safelyParse = safelyParse;
function convertUint8ArrayToNumber(value) {
let result = 0;
for (let i = value.length - 1; i >= 0; i--) {
result = (result * 256) + value[i];
}
return result;
}
exports.convertUint8ArrayToNumber = convertUint8ArrayToNumber;