【问题标题】:slice strings of an array in javascript在javascript中切片数组的字符串
【发布时间】:2022-01-01 16:21:29
【问题描述】:

我正在低于数组。

Array [
  "מאי 2017",
  "יוני 2017",
  "ינואר 2018",
  "פברואר 2018",
  "מרץ 2018",
  "מאי 2018",
  "יוני 2018",
  "נובמבר 2019",
  "אוגוסט 2020",
  "נובמבר 2020",
  "דצמבר 2020",
  "ינואר 2021",
]

我有一个英文月份数组。

const englishMonthArray = [
    "",
    "January",
    "February",
    "March",
    "April",
    "May",
    "June",
    "July",
    "August",
    "September",
    "October",
    "November",
    "December",
  ]

我怎样才能将上述数组中的月份与英文月份相匹配?谢谢

【问题讨论】:

  • 我可能不明白这个问题,但我在这里看不到任何英语月份。
  • 现在你可以看到有一个英文月份数组。请给出解决方案。
  • 您是否在问如何生成一个新数组,将希伯来月份替换为英文对应月份?例如,“מאי 2017”会变成“2017 May”吗?
  • 是的..这就是我想要的@Andy

标签: javascript arrays reactjs react-native


【解决方案1】:
  1. 创建一个字典对象,将希伯来月份(键)映射到对应的英语(值)。

  2. map 在数组上。 split空格上的字符串,从字典中获取英文月份,然后返回一个新字符串。

const arr=["מאי 2017","יוני 2017","ינואר 2018","פברואר 2018","מרץ 2018","מאי 2018","יוני 2018","נובמבר 2019","אוגוסט 2020","נובמבר 2020","דצמבר 2020","ינואר 2021"];

const dict = {
  ינואר: 'January',
  פברואר: 'February',
  מרץ: 'March',
  אַפּרִיל: 'April', 
  מאי: 'May',
  יוני: 'June',
  יולי: 'July',
  אוגוסט: 'August',
  יולי: 'September',
  יולי: 'October',
  נובמבר: 'November',
  דצמבר: 'December'
};

const out = arr.map(el => {

  // This was interesting. For an English string
  // this would be destructured like [year, month].
  // I'm assuming that because there's Hebrew in the string
  // JS/the browser reads it differently (right to left).
  const [ month, year ] = el.split(' ');
  const enMonth = dict[month];
  return `${year} ${enMonth}`;
});

console.log(out);

其他文档

【讨论】:

    猜你喜欢
    • 2017-12-09
    • 2014-11-15
    • 2017-04-19
    • 1970-01-01
    • 2019-03-28
    • 2020-11-27
    • 1970-01-01
    • 2019-12-04
    • 2018-06-14
    相关资源
    最近更新 更多