MST

星途 面试题库

面试题:TypeScript中如何实现字符串的链式操作

在TypeScript中,假设有一个字符串类型变量`str`,初始值为'hello'。要求你通过自定义方法实现类似链式调用,如`str.capitalize().reverse().addSuffix(' world')`,分别实现`capitalize`(首字母大写)、`reverse`(字符串反转)、`addSuffix`(添加后缀)这几个方法,并返回最终处理后的字符串。
19.8万 热度难度
前端开发TypeScript

知识考点

AI 面试

面试题答案

一键面试
interface StringChain {
    capitalize(): StringChain;
    reverse(): StringChain;
    addSuffix(suffix: string): string;
}

class CustomString implements StringChain {
    private value: string;

    constructor(str: string) {
        this.value = str;
    }

    capitalize(): StringChain {
        this.value = this.value.charAt(0).toUpperCase() + this.value.slice(1);
        return this;
    }

    reverse(): StringChain {
        this.value = this.value.split('').reverse().join('');
        return this;
    }

    addSuffix(suffix: string): string {
        return this.value + suffix;
    }
}

let str = 'hello';
let result = new CustomString(str).capitalize().reverse().addSuffix(' world');
console.log(result);