将单词的首字母转为大写并返回,如果无法转为大写则返回原单词。
capitalize
函数签名
typescript
function capitalize<T>(word: T): T描述
将单词的首字母转为大写并返回,如果无法转为大写则返回原单词。
类型参数
| 参数名 | 约束 | 默认值 | 描述 |
|---|---|---|---|
T | - | - | - |
参数
| 参数名 | 类型 | 可选 | 默认值 | 描述 |
|---|---|---|---|---|
word | T | 否 | - | - |
返回值
T
点击查看源码
js
/**
* 检查一个值是否为 String 类型。
*
* @param {unknown} value - 要检查的值。
* @returns {value is string} 如果值为 String 类型,则返回 true,否则返回 false。
*/
function isString(value) {
return typeof value === "string";
}
/**
* 检查一个值是否为空字符串。
*
* @param {unknown} value - 要检查的值。
* @returns {value is ""} 如果值为空字符串,则返回 true,否则返回 false。
*/
function isEmptyString(value) {
return isString(value) && value.length === 0;
}
/**
* 将单词的首字母转为大写并返回,如果无法转为大写则返回原单词。
*
* @type {<T>(word: T) => T}
* @param {T} word - 要处理的单词。
* @returns {T} 首字母大写后的单词,如果无法转为大写或参数未提供则返回原单词。
*/
export function capitalize(word) {
if (isString(word) && !isEmptyString(word)) {
const firstChar = word.charAt(0).toUpperCase();
return firstChar + word.slice(1);
}
return word;
}ts
/**
* 检查一个值是否为 String 类型。
*
* @param {unknown} value - 要检查的值。
* @returns {value is string} 如果值为 String 类型,则返回 true,否则返回 false。
*/
function isString(value: unknown): value is string {
return typeof value === "string";
}
/**
* 检查一个值是否为空字符串。
*
* @param {unknown} value - 要检查的值。
* @returns {value is ""} 如果值为空字符串,则返回 true,否则返回 false。
*/
function isEmptyString(value: unknown): value is "" {
return isString(value) && value.length === 0;
}
/**
* 将单词的首字母转为大写并返回,如果无法转为大写则返回原单词。
*
* @type {<T>(word: T) => T}
* @param {T} word - 要处理的单词。
* @returns {T} 首字母大写后的单词,如果无法转为大写或参数未提供则返回原单词。
*/
export function capitalize<T>(word: T): T {
if (isString(word) && !isEmptyString(word)) {
const firstChar = word.charAt(0).toUpperCase();
return (firstChar + word.slice(1)) as T;
}
return word;
}如有错误,请提交issue :::