diff --git a/src/index.js b/src/index.js
--- a/src/index.js
+++ b/src/index.js
@@ -10,7 +10,7 @@ const isDayjs = d => d instanceof Dayjs // eslint-disable-line no-use-before-def
 
 const parseLocale = (preset, object, isLocal) => {
   let l
-  if (!preset) return null
+  if (!preset) return L
   if (typeof preset === 'string') {
     if (Ls[preset]) {
       l = preset
@@ -66,7 +66,7 @@ const parseDate = (cfg) => {
 
 class Dayjs {
   constructor(cfg) {
-    this.$L = this.$L || parseLocale(cfg.locale, null, true) || L
+    this.$L = this.$L || parseLocale(cfg.locale, null, true)
     this.parse(cfg) // for plugin
   }
 
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
@@ -1,4 +1,4 @@
-export default (o, c) => { // locale needed later
+export default (o, c, dayjs) => { // locale needed later
   const proto = c.prototype
   const localeData = function () {
     return {
@@ -12,5 +12,12 @@ export default (o, c) => { // locale needed later
   proto.localeData = function () {
     return localeData.bind(this)()
   }
+
+  dayjs.localeData = () => {
+    const localeObject = dayjs.Ls[dayjs.locale()]
+    return {
+      firstDayOfWeek: () => localeObject.weekStart || 0
+    }
+  }
 }
 

diff --git a/test/locale.test.js b/test/locale.test.js
--- a/test/locale.test.js
+++ b/test/locale.test.js
@@ -110,4 +110,14 @@ describe('Instance locale inheritance', () => {
     expect(esDayjs.add(1, 'minute').format(format))
       .toBe('sábado 28, Abril')
   })
+
+  it('dayjs.locale() returns locale name', () => {
+    dayjs.locale(es)
+    moment.locale('es')
+    expect(dayjs.locale()).toBe(moment.locale())
+
+    dayjs.locale('en')
+    moment.locale('en')
+    expect(dayjs.locale()).toBe(moment.locale())
+  })
 })
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
@@ -2,6 +2,7 @@ import MockDate from 'mockdate'
 import moment from 'moment'
 import dayjs from '../../src'
 import localeData from '../../src/plugin/localeData'
+import '../../src/locale/zh-cn'
 
 dayjs.extend(localeData)
 
@@ -13,7 +14,7 @@ afterEach(() => {
   MockDate.reset()
 })
 
-it('localeData', () => {
+it('instance localeData', () => {
   const d = dayjs()
   const m = moment()
   const dayjsLocaleData = dayjs().localeData()
@@ -24,3 +25,16 @@ it('localeData', () => {
   expect(dayjsLocaleData.weekdaysMin(d)).toBe(momentLocaleData.weekdaysMin(m))
   expect(dayjsLocaleData.weekdaysShort(d)).toBe(momentLocaleData.weekdaysShort(m))
 })
+
+it('global localeData', () => {
+  dayjs.locale('zh-cn')
+  moment.locale('zh-cn')
+  let dayjsLocaleData = dayjs.localeData()
+  let momentLocaleData = moment.localeData()
+  expect(dayjsLocaleData.firstDayOfWeek()).toBe(momentLocaleData.firstDayOfWeek())
+  dayjs.locale('en')
+  moment.locale('en')
+  dayjsLocaleData = dayjs.localeData()
+  momentLocaleData = moment.localeData()
+  expect(dayjsLocaleData.firstDayOfWeek()).toBe(momentLocaleData.firstDayOfWeek())
+})

.locale method should returns current locale 
<!-- Issuehunt Badges -->
[<img alt="Issuehunt badges" src="https://img.shields.io/badge/IssueHunt-%24100%20Rewarded-%237E24E3.svg" />](https://issuehunt.io/r/iamkun/dayjs/issues/601)
<!-- /Issuehunt Badges -->


**Describe the bug**
```
dayjs.locale() 
```
should returns `en` instead of `null`

**Expected behavior**
returns `en`

**Information**
 - Day.js Version v1.8.14
 - OS: Mac
 - Browser Chrome
 - Time zone: PST


<!-- Issuehunt content -->
<details>
<summary>
<b>IssueHunt Summary</b>
</summary>

#### [<img src='https://avatars0.githubusercontent.com/u/17680888?v=4' alt='iamkun' width=24 height=24> iamkun](https://issuehunt.io/u/iamkun) has been rewarded.

### Sponsors (Total: $100.00)

- [<img src='https://avatars3.githubusercontent.com/u/44827199?v=4' alt='issuehunt' width=24 height=24> issuehunt](https://issuehunt.io/u/issuehunt) ($100.00)

### Tips

- Checkout the [Issuehunt explorer](https://issuehunt.io/r/iamkun/dayjs/) to discover more funded issues.
- Need some help from other developers? [Add your repositories](https://issuehunt.io/r/new) on IssueHunt to raise funds.
</details>
<!-- /Issuehunt content-->

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 test/locale.test.js