2025年02月08日 建站教程
最近在网上闲逛的时候发现一道前端面试题:typescript
语法中is
关键字是做什么的?下面web建站小编给大家详细介绍一下!
基本用法:
is
关键字一般用于函数返回值类型中,判断参数是否属于某一类型,并根据结果返回对应的布尔类型。
// 判断参数是否为string类型, 返回布尔值 function isString(s:unknown):boolean{ return typeof s === 'string' } // 判断参数是否为字符串,是在调用转大写方法 function ifUpperCase(str:unknown){ if(isString(str)){ str.toUpperCase() } }
拓展函数:
const isNumber = (val: unknown): val is number => typeof val === 'number' const isString = (val: unknown): val is string => typeof val === 'string' const isSymbol = (val: unknown): val is symbol => typeof val === 'symbol' const isFunction = (val: unknown): val is Function => typeof val === 'function' const isObject = (val: unknown): val is Record<any, any> => val !== null && typeof val === 'object' function isPromise<T = any>(val: unknown): val is Promise<T> { return isObject(val) && isFunction(val.then) && isFunction(val.catch) } const objectToString = Object.prototype.toString const toTypeString = (value: unknown): string => objectToString.call(value) const isPlainObject = (val: unknown): val is object => toTypeString(val) === '[object Object]'
本文链接:http://so.lmcjl.com/news/22758/