【问题标题】:Replace 3rd element with regular expression in javascript用javascript中的正则表达式替换第三个元素
【发布时间】:2022-11-14 16:55:11
【问题描述】:

完成比赛后,我得到了一个如下所示的数组。 [“上午 10 点”、“下午 5 点”、“仅限预约”] 我想附加文字仅适用于时间并以这种格式返回。

“上午 10 点至下午 5 点仅限预约”

但是当我像下面这样加入时

[ '10 am', '5 pm', 'by appointment only' ].join( 'to' );

我得到的结果是

“上午 10 点至下午 5 点仅限预约”

因此,在正则表达式的帮助下,有一种方法可以删除'至'仅来自数组的第三个元素,这样在加入时不会追加'至 '再次。

【问题讨论】:

  • 我想你应该过度思考你的方法而不是走一条老套的路线
  • myArray[0] + ' to ' + myArray[1] + ' ' + myArray[2]?
  • 为什么不直接将它插入到开头的两个元素之间呢?如果您不需要“动态”数组,而只需要始终具有这三个元素的数组 - 那么data[0] + ' to ' + data[1] + ' ' + data[2] ...?

标签: javascript


【解决方案1】:
const [start,end,describe] = [ '10 am', '5 pm', 'by appointment only' ];
const finalText = `${start} to ${end} ${describe}`;
console.log(finalText)

【讨论】:

    【解决方案2】:

    你可以使用Array.prototype.reduce()

    const arr = ['10 am', '5 pm', 'by appointment only']
    const result = arr.reduce((a, c, i) => (a += c + (!i ? ' to ' : ' '), a), [])
    
    console.log(result)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-26
      • 2016-11-12
      • 2010-11-12
      • 2016-09-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多