You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript:如何截取字符串前指定数量字符并移除多余部分

截取动态长度字符串的前N个字符(默认5个)

这里给你整理了几种主流编程语言的实现方案,都能自动适配原字符串的长度——不管原字符串比指定长度长还是短,都能正确返回前N个字符(默认取5个):

Python

直接用字符串切片即可,Python的切片会自动处理长度不足的情况,不会报错:

def truncate_string(s, n=5):
    return s[:n]

# 测试示例
test_str1 = "HelloWorld"
test_str2 = "Hi"
print(truncate_string(test_str1))  # 输出: Hello
print(truncate_string(test_str2))  # 输出: Hi
print(truncate_string(test_str1, 3))  # 输出: Hel

JavaScript

使用slice()方法,同样能安全处理短字符串:

function truncateString(s, n = 5) {
    return s.slice(0, n);
}

// 测试示例
const testStr1 = "HelloWorld";
const testStr2 = "Hi";
console.log(truncateString(testStr1)); // 输出: Hello
console.log(truncateString(testStr2)); // 输出: Hi
console.log(truncateString(testStr1, 3)); // 输出: Hel

Java

需要结合substring()和Math.min()来避免索引越界,同时处理空字符串的情况:

public class StringTruncator {
    public static String truncateString(String s, int n) {
        if (s == null) return "";
        return s.substring(0, Math.min(s.length(), n));
    }

    // 重载方法,默认截取前5个字符
    public static String truncateString(String s) {
        return truncateString(s, 5);
    }

    public static void main(String[] args) {
        String testStr1 = "HelloWorld";
        String testStr2 = "Hi";
        System.out.println(truncateString(testStr1)); // 输出: Hello
        System.out.println(truncateString(testStr2)); // 输出: Hi
        System.out.println(truncateString(testStr1, 3)); // 输出: Hel
    }
}

PHP

用substr()函数,当原字符串长度小于指定长度时,会直接返回整个字符串:

function truncateString($s, $n = 5) {
    return substr($s, 0, $n);
}

// 测试示例
$testStr1 = "HelloWorld";
$testStr2 = "Hi";
echo truncateString($testStr1) . "\n"; // 输出: Hello
echo truncateString($testStr2) . "\n"; // 输出: Hi
echo truncateString($testStr1, 3) . "\n"; // 输出: Hel

内容的提问来源于stack exchange,提问作者Zippy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 05:40:22