使用JavaScript

时间:2019-04-15 02:30:24

标签: javascript string

编辑:我的代码有效[em] -console.logging时我刚打过错。它使用答案here中已经发现的相同技术。

我有一个函数应该删除字符串中逗号后的所有内容:

function shortenToDate(longDate) {

  let newDate = longDate.substring(0, longDate.indexOf(","));

  return newDate;

}

^您只需要从0索引到indexOf()的字符串的第一个实例中取出一个块,然后再删除所有字符即可。

我也尝试过:

function shortenToDate(longDate) {

  return longDate.substring(longDate.indexOf(0, ","));

}

console.log(shortenToDate(shortenToDate("Friday May 2, 9am")));

没有任何效果。它刚刚返回Friday May 2, 9am

3 个答案:

答案 0 :(得分:2)

您可以简单地使用split并获取0 th 索引

const shortenToDate = longDate => longDate.split(',',1)[0];
console.log(shortenToDate("Friday May 2, 9am"))

问题

在您使用的第一个代码段中

longDate.substring(longDate.indexOf(","), longDate.length -1);

但是您想要从0 th 索引

const  shortenToDate =>longDate => longDate.substring(0,longDate.indexOf(","));

console.log(shortenToDate("Friday May 2, 9am"))

答案 1 :(得分:2)

使用String​.prototype​.split()Array.prototype​.shift()怎么样?

function shortenToDate(longDate) {
  let newDate = longDate.split(',');
  return newDate.shift();
}

console.log(shortenToDate("Friday May 2, 9am"))

答案 2 :(得分:0)

使用正则表达式可能会更容易-匹配逗号,后跟任意字符,并替换为空字符串:

const shortenToDate = longDate => longDate.replace(/,.*/, '');
console.log(shortenToDate("Friday May 2, 9am"))