Получить название месяца от даты

По существу вам нужен порт USB на ПК-1, который будет выступать в качестве USB-устройства для ПК-2.

Это невозможно для подавляющего большинства систем ПК, потому что USB является асимметричной шиной с архитектурой хоста / устройства (или мастер / ведомый, если хотите). USB-контроллеры (и их порты) на большинстве ПК могут работать только в режиме хоста и не могут имитировать устройство.

Именно по этой причине вы не можете подключать компьютеры через USB без специального кабеля со специализированной электроникой.

Единственное исключение - если у вас есть ПК, поддерживающий стандарт USB On-The-Go , который позволяет USB-порту действовать как в режиме хоста, так и в устройстве. Устройства USB-OTG действительно существуют, но обычно это встроенные устройства (смартфоны и т. Д.). Я не знаю, есть ли способ добавить порт USB-OTG на товарный ПК.

EDIT:

Если вам не нужна клавиатура перед ОС на ПК -2, вы можете использовать пару USB-ключей Bluetooth - по одному на каждом ПК. Вам нужно будет использовать специализированное программное обеспечение на ПК-1, но это определенно возможно - я уже видел возможную реализацию в Linux , и я уверен, что для Windows это должно быть одно. Вам также понадобятся Bluetooth HID-драйверы на ПК-2, если они еще не установлены.

В другом примечании вы рассматривали чисто программное / сетевое решение, такое как TightVNC ?

585
задан John Slegers 10 May 2018 в 16:24
поделиться

7 ответов

Укороченная версия:

 const monthNames = [«Январь», «Февраль», «Март», «Апрель», «Май», «Июнь», «Июль», «Август». ", "Сентябрь октябрь ноябрь декабрь" ]; const d = новая дата (); document.write («Текущий месяц» + monthNames [d.getMonth ()]); 

Примечание (2019-03-08) - Этот мой ответ, который я первоначально написал в 2009 году, устарел. См. ответ Дэвида Стори для лучшего решения.

1054
ответ дан 22 November 2019 в 21:55
поделиться

Для меня это - лучшее решение,

для TypeScript также

const env = process.env.REACT_APP_LOCALE || 'en';

const namedMonthsArray = (index?: number): string[] | string => {
  const months = [];

  for (let month = 0; month <= 11; month++) {
    months.push(
      new Date(new Date('1970-01-01').setMonth(month))
        .toLocaleString(env, {
          month: 'long',
        })
        .toString(),
    );
  }
  if (index) {
    return months[index];
  }
  return months;
};

, Вывод

["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
1
ответ дан 22 November 2019 в 21:55
поделиться

Сохраните это простым:

echo date("d M Y");

, который даст

31 Aug 2019
-3
ответ дан 22 November 2019 в 21:55
поделиться

Сохранять имена в массиве и искать по индекс месяца.

var month=new Array(12);
month[0]="January";
month[1]="February";
month[2]="March";
month[3]="April";
month[4]="May";
month[5]="June";
month[6]="July";
month[7]="August";
month[8]="September";
month[9]="October";
month[10]="November";
month[11]="December";

document.write("The current month is " + month[d.getMonth()]);

Метод getMonth () JavaScript

2
ответ дан 22 November 2019 в 21:55
поделиться

Если вы не возражаете против расширения прототипа Date (и есть несколько веских причин не делать этого), вы действительно можете придумать очень простой метод:

Date.prototype.monthNames = [
    "January", "February", "March",
    "April", "May", "June",
    "July", "August", "September",
    "October", "November", "December"
];

Date.prototype.getMonthName = function() {
    return this.monthNames[this.getMonth()];
};
Date.prototype.getShortMonthName = function () {
    return this.getMonthName().substr(0, 3);
};

// usage:
var d = new Date();
alert(d.getMonthName());      // "October"
alert(d.getShortMonthName()); // "Oct"

Эти затем функции будут применяться ко всем объектам Date javascript.

62
ответ дан 22 November 2019 в 21:55
поделиться

Для этого вы можете использовать datejs . Проверьте FormatSpecifiers , MMMM дает вам название месяца:

var objDate = new Date("10/11/2009");
document.write(objDate.toString("MMMM"));

И datejs локализовал его для более чем 150 языков! См. Здесь

17
ответ дан 22 November 2019 в 21:55
поделиться

Вот еще один, с поддержкой локализации :)

Date.prototype.getMonthName = function(lang) {
    lang = lang && (lang in Date.locale) ? lang : 'en';
    return Date.locale[lang].month_names[this.getMonth()];
};

Date.prototype.getMonthNameShort = function(lang) {
    lang = lang && (lang in Date.locale) ? lang : 'en';
    return Date.locale[lang].month_names_short[this.getMonth()];
};

Date.locale = {
    en: {
       month_names: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
       month_names_short: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    }
};

вы можете легко добавить поддержку других языков:

Date.locale.fr = {month_names: [...]};
159
ответ дан 22 November 2019 в 21:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: