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

如何移除数组中字符串的.mp4后缀?slice方法失效的解决办法

解决数组内字符串移除.mp4后缀的问题

你之前用array_object.slice(0,-4)无效的原因很明确——这个方法是对数组本身进行截取操作,会移除数组的最后N个元素,而不是处理数组里的每个字符串元素。要实现你的需求,需要遍历数组,对每个字符串单独处理,这里给你几种实用的方案:

方案一:使用map() + slice()

这是最直接的方式,利用map()遍历数组的每个元素,对每个字符串调用slice(0,-4)来截取掉末尾的.mp4:

const array_object = ["video1.mp4", "video2.mp4", "video3.mp4"];
const processedArray = array_object.map(item => item.slice(0, -4));
// 输出结果:["video1", "video2", "video3"]

方案二:带判断的安全处理

如果你的数组里可能存在非.mp4结尾的字符串,可以先判断再处理,避免误修改:

const processedArray = array_object.map(item => {
  // 先检查字符串是否以.mp4结尾
  if (item.endsWith(".mp4")) {
    return item.slice(0, -4);
  }
  // 不符合条件的元素保持原样
  return item;
});

方案三:正则表达式替换

用正则精准匹配字符串末尾的.mp4并替换为空,这种方式同样能兼容非.mp4的元素:

const processedArray = array_object.map(item => item.replace(/\.mp4$/, ""));

正则\.mp4$中的$表示匹配字符串的结尾,确保只会替换末尾的.mp4,不会影响字符串中间的类似内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 09:47:36