diff --git a/src/plugin/localeData/index.js b/src/plugin/localeData/index.js
--- a/src/plugin/localeData/index.js
+++ b/src/plugin/localeData/index.js
@@ -18,6 +18,7 @@ export default (o, c, dayjs) => { // locale needed later
       monthsShort: instance =>
         (instance ? instance.format('MMM') : getShort(this, 'monthsShort', 'months', 3)),
       firstDayOfWeek: () => this.$locale().weekStart || 0,
+      weekdays: instance => (instance ? instance.format('dddd') : getShort(this, 'weekdays')),
       weekdaysMin: instance =>
         (instance ? instance.format('dd') : getShort(this, 'weekdaysMin', 'weekdays', 2)),
       weekdaysShort: instance =>

diff --git a/test/plugin/localeData.test.js b/test/plugin/localeData.test.js
--- a/test/plugin/localeData.test.js
+++ b/test/plugin/localeData.test.js
@@ -1,11 +1,11 @@
 import MockDate from 'mockdate'
 import moment from 'moment'
 import dayjs from '../../src'
-import localeData from '../../src/plugin/localeData'
-import localizedFormat from '../../src/plugin/localizedFormat'
 import '../../src/locale/fr'
-import '../../src/locale/zh-cn'
 import '../../src/locale/ru'
+import '../../src/locale/zh-cn'
+import localeData from '../../src/plugin/localeData'
+import localizedFormat from '../../src/plugin/localizedFormat'
 
 dayjs.extend(localizedFormat)
 dayjs.extend(localeData)
@@ -18,24 +18,34 @@ afterEach(() => {
   MockDate.reset()
 })
 
-it('Instance localeData', () => {
-  const d = dayjs()
-  const m = moment()
-  const dayjsLocaleData = dayjs().localeData()
-  const momentLocaleData = moment().localeData()
-  expect(dayjsLocaleData.firstDayOfWeek()).toBe(momentLocaleData.firstDayOfWeek())
-  expect(dayjsLocaleData.months(d)).toBe(momentLocaleData.months(m))
-  expect(dayjsLocaleData.months()).toEqual(momentLocaleData.months())
-  expect(dayjsLocaleData.monthsShort(d)).toBe(momentLocaleData.monthsShort(m))
-  expect(dayjsLocaleData.monthsShort()).toEqual(momentLocaleData.monthsShort())
-  expect(dayjsLocaleData.weekdaysMin(d)).toBe(momentLocaleData.weekdaysMin(m))
-  expect(dayjsLocaleData.weekdaysMin()).toEqual(momentLocaleData.weekdaysMin())
-  expect(dayjsLocaleData.weekdaysShort(d)).toBe(momentLocaleData.weekdaysShort(m))
-  expect(dayjsLocaleData.weekdaysShort()).toEqual(momentLocaleData.weekdaysShort())
-  const longDateFormats = ['LT', 'LTS', 'L', 'LL', 'LLL', 'LLLL']
-  longDateFormats.forEach((f) => {
-    expect(dayjsLocaleData.longDateFormat(f)).toEqual(momentLocaleData.longDateFormat(f))
+describe('Instance localeData', () => {
+  ['zh-cn', 'en', 'fr'].forEach((lo) => {
+    it(`Locale: ${lo}`, () => {
+      dayjs.locale(lo)
+      moment.locale(lo)
+      const d = dayjs()
+      const m = moment()
+      const dayjsLocaleData = dayjs().localeData()
+      const momentLocaleData = moment().localeData()
+      expect(dayjsLocaleData.firstDayOfWeek()).toBe(momentLocaleData.firstDayOfWeek())
+      expect(dayjsLocaleData.months(d)).toBe(momentLocaleData.months(m))
+      expect(dayjsLocaleData.months()).toEqual(momentLocaleData.months())
+      expect(dayjsLocaleData.monthsShort(d)).toBe(momentLocaleData.monthsShort(m))
+      expect(dayjsLocaleData.monthsShort()).toEqual(momentLocaleData.monthsShort())
+      expect(dayjsLocaleData.weekdays(d)).toBe(momentLocaleData.weekdays(m))
+      expect(dayjsLocaleData.weekdays()).toEqual(momentLocaleData.weekdays())
+      expect(dayjsLocaleData.weekdaysMin(d)).toBe(momentLocaleData.weekdaysMin(m))
+      expect(dayjsLocaleData.weekdaysMin()).toEqual(momentLocaleData.weekdaysMin())
+      expect(dayjsLocaleData.weekdaysShort(d)).toBe(momentLocaleData.weekdaysShort(m))
+      expect(dayjsLocaleData.weekdaysShort()).toEqual(momentLocaleData.weekdaysShort())
+      const longDateFormats = ['LT', 'LTS', 'L', 'LL', 'LLL', 'LLLL']
+      longDateFormats.forEach((f) => {
+        expect(dayjsLocaleData.longDateFormat(f)).toEqual(momentLocaleData.longDateFormat(f))
+      })
+    })
   })
+  dayjs.locale('en')
+  moment.locale('en')
 })
 
 

LocaleData: weekdays is not a function on instance level
**Describe the bug**
When using localeData from an instance the error `weekdays is not a function` is thrown.

Steps to reproduce:
```ts
dayjs().localeData().weekdays()
```

Using the global function it works:
```ts
dayjs.localeData().weekdays()
```

**Expected behavior**
localeData returns the same objects for local and global calls.

It is also documented that way: https://day.js.org/docs/en/plugin/locale-data

**Information**
 - Day.js Version 1.8.34



test/timezone.test.js(1) test/timezone.test.js(2) test/timezone.test.js(3) test/timezone.test.js(4)
test/plugin/localeData.test.js