首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

coffeescript fat arrow访问不是父母'这个'

问题内容:coffeescript fat arrow访问不是父母'这个'

答案内容:

在 CoffeeScript 中,fat arrow(也称为 arrow function)是一种特殊的函数声明,它将函数声明与函数表达式结合在一起。fat arrow 在父函数中定义,可以访问父函数中的变量,属性等。

例如,下面的代码定义了一个 fat arrow,它访问了父函数中的 this 变量:

代码语言:txt
复制
class Person
  constructor: (@name) ->
    @name = "John"
    console.log this

p = new Person "Jane"

在这个例子中,this 变量是在 constructor 函数内部定义的,并且在 console.log this 语句中访问了它。由于 this 变量是在 fat arrow 中定义的,因此它可以在父函数中访问。

与 JavaScript 中的函数表达式不同,fat arrow 是一种函数声明,因此它们可以访问父函数中的变量和属性。这使得 fat arrow 成为在 CoffeeScript 中定义对象属性和方法的一种有用方式。

需要注意的是,虽然 fat arrow 可以访问父函数中的变量和属性,但它们不能访问父函数中的参数。在上面的例子中,name 参数是在 constructor 函数中定义的,并且被赋值为 "John",因此可以在 fat arrow 中访问它。但是,name 参数并不是在 fat arrow 中定义的,因此不能像下面这样访问它:

代码语言:txt
复制
class Person
  constructor: (@name) ->
    @name = "John"
    console.log @name

p = new Person "Jane"

在这个例子中,@name 是在 constructor 函数中定义的,并且在 fat arrow 中访问了它。但是,name 参数是在 constructor 函数中定义的,并且被赋值为 "John",因此不能像下面这样访问它:

代码语言:txt
复制
class Person
  constructor: (@name) ->
    @name = "John"
    console.log @name

p = new Person "Jane"

在这个例子中,name 参数是在 constructor 函数中定义的,并且被赋值为 "John",因此不能像下面这样访问它:

代码语言:txt
复制
class Person
  constructor: (@name) ->
    @name = "John"
    console.log @name

p = new Person "Jane"

在这个例子中,name 参数是在 `constructor

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 一种基于Linux文件系统的数据恢复方法_武汉病例轨迹

    起因: 昨天晚上思路不是很清晰(上了一天班回来有点蒙),还是强忍着疲惫想搞事情,结果悲剧了… … 本来想拿SD卡做一张linux烧录卡,烧录脚本是很久以前写的,有git记录,一直不成功,就回退了几次提交,然后执行的时候没有给脚本传参(/dev/sd**),结果脚本中默认磁盘设备为/dev/sdb ,在现在电脑上是一块数据磁盘,执行到一半的时候由于某些原因意外退出,但还是有一些命令执行,比如最致命的一条: dd if=/dev/zero of=${node} bs=1024 count=1 conv=fsync conv=notrunc node指向的就是/dev/sdb 然后把LVM2 label、meta data、分区表都给删除了,由于此硬盘在/etc/fstab中有记录,所以今天开机有卡主了,开始以为磁盘接触不良,进入linux recovery模式屏蔽掉fstab中相关选项后进入系统. ls -l /dev/sd* 发现只有/dev/sdb 没有分区信息,接着执行fdisk /dev/sdb, p打印信息 Command (m for help): p Disk /dev/sdb: 465.8 GiB, 500107862016 bytes, 976773168 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: dos Disk identifier: 0x********* 同样没有分区信息,回想昨晚的操作,终于……(一身冷汗)

    01

    基于AIGC写作尝试:深入理解 Apache Arrow

    在当前的数据驱动时代,大量的数据需要在不同系统和应用程序之间进行交换和共享。这些数据可能来自于不同的源头,如传感器、数据库、文件等,具有不同的格式、大小和结构;不同系统和编程语言的运行环境也可能存在差异,如操作系统、硬件架构等,进一步增加了数据交换的复杂度和难度。为了将这些数据有效地传输和处理,需要一个高性能的数据交换格式,以提高数据交换和处理的速度和效率。传统上,数据交换通常采用文本格式,如CSV、XML、JSON等,但它们存在解析效率低、存储空间占用大、数据类型限制等问题,对于大规模数据的传输和处理往往效果不佳。因此,需要一种高效的数据交换格式,可以快速地将数据从一个系统或应用程序传输到另一个系统或应用程序,并能够支持不同编程语言和操作系统之间的交互。

    04
    领券