---
title: getApp
summary: "介绍 getApp() 函数的用法及注意事项，用于获取小程序全局唯一的 App 实例。"
order: 0
questions:
  - getApp() 函数的作用是什么？
  - 使用 getApp() 获取实例时有哪些注意事项？
  - 在 App() 之前调用 getApp() 会返回什么？
  - 为什么不建议在 App() 内部的函数中调用 getApp()？
  - getApp() 的默认模式是从哪个基础库版本开始支持的？
---

## getApp(): AppObject

获取到小程序全局唯一的 `App` 实例。

## 示例

```js
// other.js
var appInstance = getApp();
console.log(appInstance.globalData); // I am global data
```

## 注意事项

1. 不要在定义于 `App()` 内的函数中，或调用 `App()` 之后的任何时间再调用 `getApp()`，使用 `this` 就可以拿到 app 实例。
2. 通过 `getApp` 获取实例之后，不要私自调用生命周期函数。

## 默认模式

> 基础库 >= 2.16.0

如果在 `App()` 前调用了 `getApp()`，则该函数会返回 `{__fake_app__: true}` 的假对象，而不是真正的 `App` 实例。在该对象上添加的任何属性和方法，都会被覆盖到真正的 `App` 实例上。 请注意属性名冲突的问题。
