<commit_before>---
layout:     post
title:      this几种不同的使用场景
subtitle:   学习笔记
date:       2017-07-11
author:     Ywg
header-img: img/home-bg.jpg
catalog:    true
tags: JavaScript 
---


## 一、this
函数中的this到底取何值，只有在函数真正被调用执行时才能确定，函数定义时无法确定
```
var age = 40;
var obj = {
  age : '20',
  fn : function () {
     console.log(this.age);<commit_msg>Update 2017-07-11-this几种不同的使用场景.md<commit_after>---
layout:     post
title:      this几种不同的使用场景
subtitle:   学习笔记
date:       2017-07-11
author:     Ywg
header-img: img/home-bg.jpg
catalog:    true
tags: JavaScript JS深入
---


## 一、this
函数中的this到底取何值，只有在函数真正被调用执行时才能确定，函数定义时无法确定
```
var age = 40;
var obj = {
  age : '20',
  fn : function () {
     console.log(this.age);
{'fraction_non_alphanumeric': 0.14064697609001406, 'fraction_numerical': 0.0450070323488045, 'mean_word_length': 2.912087912087912, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4934477', 'n_tokens_mistral': 367, 'n_tokens_neox': 371, 'n_words': 59}