`

javascript 'this' , with prototype, closure

 
阅读更多

just give an example

function Controller(){
}

Controller.prototype=(function(){
var p1=function(){
console.log(this);
};

var p2=function(){
console.log("in p2");
};
return {
//create an object as the prototype, supposed it is named as "p1"
fun1:function(){
console.log(this);
},
fun2:p1,
fun3:function(){
p1();
}
}
})();

var c=new Controller();
c.fun1();//this represents the prototype object p1
c.fun2();//this represents the prototype object p1
c.fun3();//this represents the window
 
分享到:
评论

相关推荐

    Google Javascript Closure Compiler

    closure-compiler-v20170521.jar,以及一个.chm使用说明:‘Getting Started with the Closure Compiler Application’,‘Advanced Compilation and Externs’,‘Understanding the Restrictions Imposed by the ...

    Closure The Definitive Guide

    If you're ready to use Closure to build rich web applications with JavaScript, this hands-on guide has precisely what you need to learn this suite of tools in depth. Closure makes it easy for ...

    closure library 模块化的javascript库

    Closure Library是Google开发的一个强大的、模块化的JavaScript库,旨在提供高效、可维护的代码解决方案。这个库被设计为可跨浏览器、跨平台使用,确保在各种JavaScript环境中的一致性。Closure Library的核心理念是...

    javascript prototype,executing,context,closure

    要真正掌握JavaScript,理解以下概念至关重要:原型(prototype)、执行(executing)、上下文(context)和闭包(closure)。 首先,原型(prototype)是JavaScript面向对象编程的核心。在JavaScript中,每一个...

    Closure编译器的纯JavaScript版本最高级的构建工具

    Closure编译器是Google开发的一款强大的JavaScript优化工具,它的纯JavaScript版本为开发者提供了一种高效、先进的代码构建方案。此工具旨在提升JavaScript代码的质量、性能和可维护性,通过压缩、优化以及处理代码...

    JavaScript知识点总结(十六)之Javascript闭包(Closure)代码详解

    闭包(Closure)是一个可以包含自由变量的代码块,这个自由变量并不是在这个代码块或任何全局上下文中定义的,而是在定义代码块的环境中定义。简单来说,闭包就是在一个函数内部定义另一个函数,内层函数可以引用...

    closure-compiler-v20171112.jar

    Closure Compiler是Google开发的一款强大的JavaScript代码优化工具,其主要功能是对JavaScript代码进行压缩和混淆,以提高代码的运行效率和安全性。"closure-compiler-v20171112.jar"是该编译器的一个特定版本,发布...

    javascript学习小结之prototype

    本系列博文主要谈一些在 javascript 使用中经常会混淆的高级应用,包括: prototype, closure, scope, this关键字. 对于一个需要提高自己javascript水平的程序员,这些都是必须要掌握的,本节主要介绍prototype.

    closure dependency not found解决包

    当我们从github上下载了blockly之后,打卡demos下的index.html时,选择blockly-developer-tools时会弹出一个对话框(大体内容是closure dependency not found),此时我们需要下载这个文件,解压并且命名为closure-...

    google closure

    Google Closure 是一个强大的JavaScript开发工具集,由Google开源并维护。这个框架包含了多个部分,旨在帮助开发者编写高质量、高性能的JavaScript代码。Closure的核心组件包括: 1. **Closure Library**:这是一个...

    前端开源库-closure-loader

    **Closure Loader - 前端开发的利器** Closure Loader是一个专为前端开发者设计的开源工具,主要...如果你的项目中使用了Closure Library,或者你追求高性能、高可靠性的JavaScript应用,Closure Loader绝对值得尝试。

    Closure: The Definitive Guide

    闭包(Closure)是JavaScript中的一个核心概念,它是指有权访问独立变量的函数,即使是在该函数的外部。闭包允许函数访问并操作函数外部的变量,这是通过在函数定义的时候捕获自由变量实现的,自由变量是在函数外部...

    javascript 必知必会之closure

    下面的代码片断缩进目前还不完善,你也可以选择 下载pdf 来...A “closure” is an [removed]typically a function) that can have free variables together with an environment that binds those variables (that

    利用ClosureCompiler通过Rollup缩小和优化JavaScript

    Closure Compiler是一款由Google开发的高级JavaScript编译器,它能够对源代码进行静态分析和优化,包括删除未使用的变量、函数和类,以及进行类型检查,将变量名混淆(minification)等,从而显著减小代码体积并提高...

    closure-library-master

    Closure Library 是一个广泛使用的 JavaScript 库,尤其在构建大型、高性能的 Web 应用程序时非常有用。这个库提供了大量的实用工具函数、面向对象的支持以及高级组件,如 AJAX、事件处理、动画效果等,有助于开发者...

    Closure Linter完整安装包

    Closure Linter是一款强大的静态代码分析工具,主要用于检查JavaScript代码的质量,确保代码符合Google的 Closure编程风格指南。这个压缩包提供了一个完整的Closure Linter安装包,包括必要的依赖和安装说明,以便...

    closure闭包

    在Java中,你可以使用Lambda表达式或匿名内部类来创建闭包,而在JavaScript中,所有的函数都是闭包。在C#中,可以使用`Action`、`Func`等委托类型或`lambda`表达式来创建闭包。 总的来说,闭包在编程中扮演着至关...

Global site tag (gtag.js) - Google Analytics