youbi

{{ date | youbi }}

{{ date | youbi('曜') }}

<div id="app">
  <p><input type="date" v-model="date"></p>
  <p>{{ date | youbi }}</p>
  <p>{{ date | youbi('曜') }}</p>
</div>
new Vue({
  el: '#app',
  data: {
    date: '2018年12月4日'
  },
  filters: {
    youbi(date, suffix) {
      if (!date) return '【無効な日付】'
      const [y, m, d] = date.replace(/[年月-]/g, '/').replace('日', '').split('/')
      const _m = +m - 1
      const _d = +d
      const day = '日月火水木金土'.charAt(new Date(y, _m, _d).getDay())
      if (suffix) {
        return `${date} ${day}${suffix}`
      } else {
        return `${date} (${day})`
      }
    }
  }
})