Skip to content

@utilslib/core/capitalize


将单词的首字母转为大写并返回,如果无法转为大写则返回原单词。


capitalize

函数签名

typescript
function capitalize<T>(word: T): T

描述

将单词的首字母转为大写并返回,如果无法转为大写则返回原单词。

类型参数

参数名约束默认值描述
T---

参数

参数名类型可选默认值描述
wordT--

返回值

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 :::