From 93c718b78058cee351c8db922506d9540dced296 Mon Sep 17 00:00:00 2001 From: wumo1016 <760478279@qq.com> Date: Wed, 17 Sep 2025 21:35:38 +0800 Subject: [PATCH] perf: optimize getType and isType --- packages/vutils/src/common/getType.ts | 5 +---- packages/vutils/src/common/isType.ts | 4 +++- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/packages/vutils/src/common/getType.ts b/packages/vutils/src/common/getType.ts index a66a42d0..55ccb27a 100644 --- a/packages/vutils/src/common/getType.ts +++ b/packages/vutils/src/common/getType.ts @@ -1,8 +1,5 @@ const getType = (value: any): string => { - return {}.toString - .call(value) - .replace(/^\[object /, '') - .replace(/]$/, ''); + return Object.prototype.toString.call(value).slice(8, -1); }; export default getType; diff --git a/packages/vutils/src/common/isType.ts b/packages/vutils/src/common/isType.ts index 5091c727..81c03215 100644 --- a/packages/vutils/src/common/isType.ts +++ b/packages/vutils/src/common/isType.ts @@ -4,6 +4,8 @@ * @param type type * @returns */ -const isType = (value: any, type: string): boolean => Object.prototype.toString.call(value) === `[object ${type}]`; +import getType from './getType'; + +const isType = (value: any, type: string): boolean => getType(value) === type; export default isType;