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

自调用函数fabric原型不起作用

自调用函数是指在定义后立即调用的函数,也称为立即执行函数(Immediately Invoked Function Expression,IIFE)。它的作用是创建一个独立的作用域,避免变量污染全局命名空间,并且可以实现模块化的开发。

在JavaScript中,自调用函数的语法形式为:

代码语言:javascript
复制
(function() {
  // 函数体
})();

而fabric是一个流行的JavaScript库,用于创建基于HTML5 Canvas的交互式图形应用程序。它提供了丰富的API和功能,可以实现图形绘制、图形变换、图形交互等操作。

根据提供的问答内容,问题是关于自调用函数fabric原型不起作用。根据描述,可以推测是在使用fabric库时,自调用函数的原型(prototype)没有起作用。

在JavaScript中,函数的原型是用于实现继承和共享属性的机制。通过给函数的原型对象添加属性和方法,可以让该函数的实例对象共享这些属性和方法。

然而,自调用函数并没有定义一个构造函数,因此没有实例对象,也就没有原型对象。因此,在自调用函数中使用原型是没有意义的,也不会起作用。

如果想要在fabric中使用原型,可以考虑以下几种方式:

  1. 使用fabric提供的原型方法和属性:fabric库已经提供了丰富的原型方法和属性,可以直接使用它们来实现所需的功能。function MyFabric() { // 自定义属性和方法 } MyFabric.prototype = fabric; // 使用自定义的fabric对象 var myFabric = new MyFabric();
  2. 创建自定义的fabric对象并添加原型:可以通过自定义一个构造函数,然后将fabric对象作为该构造函数的原型,从而实现对fabric的扩展。例如:
  3. 使用其他的JavaScript继承机制:可以使用其他的JavaScript继承机制,如原型链继承、构造函数继承、组合继承等,来实现对fabric的扩展。

总结起来,自调用函数并不适合用于给fabric的原型添加属性和方法。如果想要扩展fabric的功能,可以直接使用fabric提供的方法和属性,或者通过其他的继承机制来实现。

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

相关·内容

JS高级原型以及函数调用方式

JavaScript 高级 目标 原型 ==函数原型链== 函数和对象的原型链关系 函数的4种调用方式 箭头函数 2.原型 prototype -重点 原型上存放函数 解决了同一个 say 浪费 内存的问题...原型本质是一个对象,理解为 JavaScript 自动帮我们添加的,只要是构造函数,系统会默认的为构造函数关联一个对象,这个对象就称为构造函数原型,写在原型中的成员,可以被构造函数所创建的实例调用 原型是...函数作用域是在函数定义的时候作用域就确定下来了,和函数在哪调用无关。...根据函数内部this的指向不同,可以将函数调用模式分成4种 函数调用模式 方法调用模式 构造函数调用模式 上下文调用模式(借用方法模式) 函数调用模式 如果一个函数不是一个对象的属性时,就是被当做一个函数来进行调用的...} } obj.sayHi(); 构造函数调用模式 如果函数是通过new关键字进行调用的,此时this被绑定到创建出来的新对象上。

9610

6.3 被调用函数的声明和函数原型

一、被调用函数需要具备的条件 (1)首先被调用函数必须是已经定义的函数(是库函数或者用户自己定义的函数) (2)如果使用库函数,应该在本文件开头用#include指令将调用有关库函数时所需用到的信...息“包含”到本文件中来 (3)如果使用用户自己定义的函数,而该函数的位置在调用它的函数的后面,应该在主调函 数中对被调函数作声明 二、函数声明 一般形式 (1)函数类型 函数名(参数类型...1 参数名1,参数类型2 参数名2,...参数类型n 参数名n) (2)函数类型 函数名(参数类型1,参数类型2,...参数类型n) 注意:如果已在文件的开头(在所有函数之前),已经对本文件中所调用函数进行了声...明,则在个函数中不必对其所调用函数再作声明 原创不易,未经本公众号允许禁止转载,否则追究法律责任

1.3K3229
  • 【Kotlin】apply 内联扩展函数 ( apply 函数原型 | apply 函数示例 | Kotlin 调用 Java API )

    内联扩展函数 apply II . Kotlin 调用 Java API III . apply 内联扩展函数示例 ( 调用 Java API 处理图像 ) I ....内联扩展函数 apply ---- 1 . apply 函数原型 : 泛型 T 类型对象 , 调用 apply 方法 , 后面定义了一个闭包代码块 ; 调用 apply 方法的对象类型是泛型 , 说明任何对象都可以调用该方法...: 扩展了调用 apply 函数的泛型类型 T 的对象的操作方法 , 等同于为泛型 T 对象定义了一个新的方法 ; 3 . apply 函数调用对象 : 所有的对象都可以调用 apply 函数 , 4...闭包代码块 说明 : ① 主要功能 : apply 函数可以指定要执行的代码块 , 再代码块中可以使用 this 访问其调用对象 , 执行完毕后 , 会自动返回该对象 ; ② 调用 T 对象本身 : 使用...语言中也可以调用 Kotlin 的类和方法 ; 因此 Kotlin 中是可以调用 Java 的 API 函数库的 , 这极大的拓展了 Kotlin 的功能 ; III . apply 内联扩展函数示例

    2.6K20

    浅谈执行函数(立即调用函数表达式)

    立即调用函数表达式(Immediately-Invoked Function Expression)。...以下是截取该参考博文的例子: // 执行函数。自己调用自己(递归) function foo() { foo(); } // 执行的匿名函数。...加一个标示名称,可以方便Debug (function foo() { /* code */ } ()); // 立即调用函数表达式(IIFE)也可以执行,不过可能不常用罢了 (function...个人愚见:上面例子中把 执行 解释成 “自己调用自己”,当然和 立即执行 相差很大了。但如果把 执行 解释成 “自动执行”,就和 立即执行 异曲同工了。...参考内容: 深入理解JavaScript系列(4):立即调用函数表达式 Immediately-Invoked Function Expression (IIFE)

    3.5K30

    联盟链智能合约安全浅析

    数据流向 Fabric链码通过gprc与peer节点交互 (1)当peer节点收到客户端请求的输入(propsal)后,会通过发送一个链码消息对象(带输入信息,调用者信息)给对应的链码。...•忽略返回值 一些函数具有返回值且返回值用于判断函数执行的行为,如判断函数是否执行成功,因此需要对函数的返回值进行相应的判断,以 strconv.Atoi 函数为例,其原型为: func Atoi(s...因此,对于一些敏感操作的内部函数,应尽量保证方法名采用首字母小写开头,防止被外部恶意调用。...•异常处理问题 通常每个函数调用结束后会返回相应的返回参数,错误码,如果未认真检查错误码值而直接使用其返回参数,可能导致越界访问,空指针引用等安全隐患。...总结 联盟链的发展目前还处于项目落地初期阶段,对于联盟链平台上的智能合约开发,项目方应该强化对智能合约开发者的安全培训,简化智能合约的设计,做到功能与安全的平衡,严格执行智能合约代码安全审计(评/项目组

    2.2K10

    【重拾C语言】五、模块化程序设计——函数(定义、调用、参数传递、结果返回、函数原型;典例:打印字符图形、验证哥德巴赫猜想)

    前言 本文介绍了模块化程序设计——函数,其中包括如何定义函数函数调用形式和过程、参数传递(值传递和指针传递)、函数结果的返回以及函数原型的使用。...(详见5.2.3 函数原型) 5.2.2 函数调用 函数名(实际参数表) 函数调用是在主函数或其他函数中使用已定义的函数。通过函数名和实际参数列表来调用函数。...5.2.3 函数原型(先调用后定义) 函数原型函数定义的简化形式,用于告诉编译器函数的信息,包括函数的返回值类型、函数名和参数列表(包括参数类型和参数名)。...函数原型的目的是在函数调用之前提供函数的声明,让编译器知道函数的存在及其参数和返回值的类型。...在进行程序调试时,建议采用底向上的方法,逐步调试和测试程序的不同部分,确保每个部分的正确性,最后再整体进行测试。

    26910

    python 自动化部署工具Fabric

    3.2 定义task 在语法约定上,fabric有两种定义task的方式:  1)经典方式(classic method) 所有定义在fabfile中的可调用对象(如函数、类)均可被当作task被fab...执行,这种方式不支持嵌套,也即:若fabfile.py中import了其它模块,则即使这些模块中定义了可调用对象,这些不是直接定义在fabfile中的可调用对象也不会被当作fab task。...定义一个继承Task的子类并为其实现run()方法; b. 借助@task装饰器。...environment, domain="whatever.com"):     run("git clone foo")     sudo("service apache2 restart") 被@task装饰的函数默认继承...Task类,我们可以让函数继承自定义的类,具体的用法可以参考文档Defining tasks的”Using custom subclasses with @task”部分,这里只是抛砖引玉,不再赘述。

    1.6K20

    JS 学习笔记 (七) 面向对象编程OOP

    即: say() 为全局函数,会导致作用域混乱。而且只有Person创建的对象才能调用该方法,由于该方法是放在全局的,可能会产生内存泄漏,会让全局的函数更加臃肿。...该对象就是通过调用构造函数创建的对象的原型。...的from就不起作用了(原型的from属性被屏蔽掉了),起作用的是Marry自身的from属性,如: Marry.from = "America" console.log(Tom.from); // China...利用构造函数还可以进行基于原型对象的继承 4.2 构造函数原型和实例的关系 每个构造函数都有一个原型对象。 原型有一个属性指回构造函数 实例有一个内部指针[[Prototype]]指向原型。...解决方案:盗用构造函数 4.5 盗用构造函数 在子类构造函数调用父类构造函数,并将子类当前实例只定为构造函数的上下文。

    83610

    C语言概述归纳整理

    4.一个函数由两部分构成:函数的首部和函数函数首部:函数值类型 函数名(形参1,形参2,……) 函数体:{ 定义语句; 执行语句; } 注意:函数名后面必须跟一对圆括号,括号内写函数的参数名及其类型...C语言的头文件中包括了各个标准库函数函数原型。因此,凡是在程序中调用一个库函数时,都必须包含该函数原型所在的头文件。...多行注释/*…*/,单行注释//………,注释可以用汉字或英文字符表示,注释对编译和运行不起作用。 9. \n  回车换行 10. ...赋值语句格式: 变量名=表达式或变量名或常量或函数调用; 例:a=123;    //常量123赋给变量a             b=466;    //常量466赋给变量b             ...sum=a+b; //表达式a+b赋给变量sum             c=max(a,b);//函数调用   注意:赋值运算符=的左边只能是变量名 小编给大家推荐一个学习氛围超好的地方,鼠标放到头像上就能看到

    71640

    Python远程部署利器Fabric详解-转载

    内容索引 安装Fabric 第一个例子 执行本地命令 执行远程命令 SSH功能函数 上下文管理器 错误处理 并行执行 补充 安装Fabric 首先Python的版本必须是2.7以上,可以通过下面的命令查看当前...函数: def hello(): print “Hello Fabric!”...SSH功能函数 到目前为止,我们介绍了”local()”和”run()”函数分别用来执行本地和远程Shell命令。...runs_in_parallel(): pass @serial def runs_serially(): pass 限制任务只能被执行一次 通过”execute()”方法,可以在一个”fab”命令中多次调用同一任务...原创文章,转载请注明: 转载URl-team 本文链接地址: Python远程部署利器Fabric详解-转载 Related posts: 学习—用 Python 和 OpenCV 检测和跟踪运动对象

    1.1K10

    原来你是这样的---原型原型

    : " + this.age + ", 欢快的run"); } //问题:如果构造函数原型里面的属性和方法,和构造函数的属性和方法同名,实例对象调用属性和方法时执行哪个?...//Person原型的name和Person构造函数的name,实例对象调用哪个?...,会拥有父级所有对外的,包括构造函数的属性和方方法,和父级原型的属性和方法; 子级构造函数可以对继承的属性和方法进行重写;如果构造函数里面的方法或属性,和它的原型上的方法或属性同名,则调用时优先构造函数里面的方法或属性...start ********** 构造函数ProvincePerson继承ChinaPerson, 构造函数ChinaPerson继承Person, Person继承Object Object...实例对象测试结论:构造函数原型有同名属性或方法,实例对象优先调用构造函数的属性或方法***** >>>>>准备创建一个ChinaPerson实例对象,ChinaPerson继承了Person >>>

    53710

    用node.js开发Fabric链码

    Fabric官方提供了两种开发node.js链码的途径:fabric-shim和fabric-contract-api。...使用fabric-shim开发Fabric链码 fabric-shim是较底层的链码开发包,它封装了与节点通信的grpc协议。...Init(stub):初始化链码时节点将调用该方法 Invoke(stub):节点将应用对链码的调用转化为对该方法的调用 参数stub由节点传入,它提供了访问链上账本的方法,以便读取或更新账本状态。...例如,下面的代码实现了一个最小化的node.js链码,每次调用链码都会更新acc0的状态(例如:可以使用这个状态代表账户余额): const shim = require('fabric-shim');...的链码示例代码如下,除了构造函数之外的每个方法都自动称为链码的方法,可供外部应用调用 : //demo.js const { Contract } = require('fabric-contract-api

    1.4K30

    【Azure微服务 Service Fabric 】使用az命令创建Service Fabric集群

    问题描述 在使用Service Fabric的快速入门文档: 将 Windows 容器部署到 Service Fabric。...其中在创建Service Fabric时候,示例代码中使用的是PowerShell脚本调用AZ模块来执行创建命令。但是在本地执行时,遇见了无法运行'Connect-AzAccount'等命令。...该命令将创建一个签名证书,并将其上传到新的 Key Vault。 该证书也会复制到本地目录"c:\mycertificates\"中。 在执行中如需要查看日志输出,可以添加 --debug。...该命令将创建一个签名证书,并将其上传到新的 Key Vault。 该证书也会复制到本地目录。 可在创建 Service Fabric 群集中详细了解如何使用此脚本创建群集。...:https://docs.azure.cn/zh-cn/service-fabric/service-fabric-quickstart-containers az sf cluster: https

    3.2K20

    JavaScript 编程精解 中文第三版 六、对象的秘密

    方法通常会在对象被调用时执行一些操作。将函数作为对象的方法调用时,会找到对象中对应的属性并直接调用。当函数作为方法调用时,函数体内叫做this的绑定自动指向在它上面调用的对象。...由于每个函数都有自己的this绑定,它的值依赖于它的调用方式,所以在用function关键字定义的常规函数中,不能引用外层作用域的this。...函数继承Function.prototype,而数组继承Array.prototype。...如果将关键字new放在函数调用之前,则该函数将被视为构造器。 这意味着具有正确原型的对象会自动创建,绑定到函数中的this,并在函数结束时返回。...JavaScript 的原型系统可以创建一个新类,就像旧类一样,但是它的一些属性有了新的定义。 新类派生旧类的原型,但为set方法增加了一个新的定义。

    1.7K60
    领券