美文网首页程序员
web学习笔记-函数中this指针

web学习笔记-函数中this指针

作者: gerrywanggang | 来源:发表于2022-08-20 16:39 被阅读0次
function makePerson(first, last) {
    return {
        first: first,
        last: last,
        fullName: function() {
            return this.first + ' ' + this.last;
        },
        fullNameReversed: function() {
            return this.last + ', ' + this.first;
        }
    }
}
s = makePerson("Simon", "Willison");
s.fullName(); // "Simon Willison"
s.fullNameReversed(); // Willison, Simon

上面的代码里有一些我们之前没有见过的东西:关键字 this。当使用在函数中时,this 指代当前的对象,也就是调用了函数的对象。如果在一个对象上使用点或者方括号来访问属性或方法,这个对象就成了 this。如果并没有使用“点”运算符调用某个对象,那么 this 将指向全局对象(global object)。这是一个经常出错的地方。例如:

s = makePerson("Simon", "Willison");
var fullName = s.fullName;
fullName(); // undefined undefined

当我们调用 fullName() 时,this 实际上是指向全局对象的,并没有名为 firstlast 的全局变量,所以它们两个的返回值都会是 undefined

相关文章

  • web学习笔记-函数中this指针

    上面的代码里有一些我们之前没有见过的东西:关键字 this[https://developer.mozilla.o...

  • C语言函数指针和指针函数

    C语言函数指针和指针函数 在学习C语言的过程中,“指针函数”和“函数指针”经常容易搞混了, 最简单的辨别方式就是看...

  • C语言基础及指针④函数指针

    接续上篇C语言基础及指针③函数与二级指针 在上一篇中 , 我们学习了函数与二级指针 , 函数和java中的方法类似...

  • C++函数指针和Swift的函数对象

    C++函数指针和Swift的函数对象 在C++中学习函数指针式非常痛苦的事情,而在Swift里面学习函数指针则是非...

  • 状态机学习

    函数指针 状态机学习之前先来了解下>>函数指针学习: 状态机学习

  • 引用及函数返回一个引用

    函数名称前面加引用“&”或指针符号“*”的意思学习笔记:(一)函数名称前面加引用符号“&”,代表该函数返回值类型是...

  • C++面向对象编程 第二周笔记 GeekBand

    本周学习了带指针类的写法 带指针类中的三个特殊函数 1.拷贝构造函数:又称复制构造函数,是一种特殊的构造函数,它由...

  • 02-C语言的指针

    02-C语言的指针 目标 C语言指针释义 指针用法 指针与数组 指针与函数的参数 二级指针 函数指针 指针在C中很...

  • 06指针

    一丶认识指针/为什么要学习指针 [需求]编写自定义函数func,将main函数中的两个整形变量的值交换 ​ [...

  • Kotlin学习笔记一:基本语法

    学习官方教程并做个笔记 条件表达式 可以直接用条件表达式来写函数 空指针检查 用is关键字来判断类型 跟java中...

网友评论

    本文标题:web学习笔记-函数中this指针

    本文链接:https://www.haomeiwen.com/subject/dhcmgrtx.html