`
sybilwh
  • 浏览: 12388 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

灵活的JavaScript

    博客分类:
  • WEB
阅读更多

 

  • 不创建全局变量

 

 

/**
     * Creates confirmation dialog. Handles callback on confirmation or deny
     * @param conf Dialog configuration
     * @param onConfirmCallback
     * @param onDenyCallback
     */
    function createConfirmationDialog(conf, onConfirmCallback, onDenyCallback) {
      var confirmationDialogWidget = new ConfirmationDialogWidget(conf);

      // On confirm trigger handler
      confirmationDialogWidget.vent.on('yesEventTriggered', function () {
        if (onConfirmCallback) {
          onConfirmCallback.call();
        }
        // destroy the dialog
        confirmationDialogWidget.destroy();
        me.confirmationDialogWidget = null;
        me.close();
      });

      // On deny trigger handler
      confirmationDialogWidget.vent.on('noEventTriggered', function () {
        if (onDenyCallback) {
          onDenyCallback.call();
        }
        // destroy the dialog
        confirmationDialogWidget.destroy();
        me.confirmationDialogWidget = null;
      });

      // creates the dialog
      confirmationDialogWidget.build();

      $(".title.slipstream-content-title").prepend("<div class='icon_warning'/>");
      // store the copy
      me.confirmationDialogWidget = confirmationDialogWidget;
    }

 

 

这段代码应该为私有函数。

 

var CreateConfirmationDialog = function (conf, onConfirmCallback, onDenyCallback)

 调用也有所改变:

 

 

createConfirmationDialog(conf, $.proxy(this.saveAsPolicyYesButtonCallback, this),$.proxy(self.saveAsPolicyNoButtonCallback, this));

 改为:

 

 

var ccd = new CreateConfirmationDialog(conf, $.proxy(this.saveAsPolicyYesButtonCallback, this),$.proxy(self.saveAsPolicyNoButtonCallback, this));

 

  •  原型写法
ConfirmationDialog.prototype = {
  create : function(conf, onConfirmCallback, onDenyCallback) {}
}
  •  面向对象写法
var CreateConfirmationDialog = function (conf, onConfirmCallback, onDenyCallback) {
  var conf = {
                    title: 'Changes Not Saved',
                    question: "Leaving this form will discard unsaved changes. Are you sure you want to navigate away from this form?",
                    yesButtonLabel: 'Yes',
                    noButtonLabel: 'Cancel',
                    yesButtonTrigger: 'yesEventTriggered',
                    noButtonTrigger: 'noEventTriggered',
                    kind: 'error'
                };
  function saveAsPolicyYesButtonCallback () {

  }

  function saveAsPolicyNoButtonCallback() {
                  
  }

}

CreateConfirmationDialog.prototype = {
  create : function(conf, onConfirmCallback, onDenyCallback) {}
}

 

 

 

分享到:
评论

相关推荐

    JavaScript标准参考教程

    数组作为JavaScript中重要的数据结构,其章节详述了数组的定义、length属性、数组的空位处理以及ECMAScript 5中新增的数组方法(如map、forEach等),这些方法极大地增强了数组操作的灵活性和功能性。 函数章节讲解...

    《JavaScript》课程标准

    通过这门课程的学习,使学生对 JavaScript 有一个全面的了解,掌握相关的知识点,在软件设计中能灵活地运用 JavaScript 进行系统开发。职业能力目标:培养学生编写规范化的程序代码,自主的学习能力,良好的与人沟通...

    JavaScript设计模式+JavaScript模式+JavaScript异步编程

    - 工厂模式:创建对象时避免使用new操作符,提供更灵活的实例化过程。 - 观察者模式:定义对象间的一种一对多依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都会得到通知并自动更新。 - 代理模式:为...

    JavaScript权威指南(JavaScript犀牛书一本)

    2. **对象和原型**:深入探讨了JavaScript的面向对象特性,包括对象字面量、构造函数、原型链、继承机制等,这是理解JavaScript灵活性的关键。 3. **作用域和闭包**:解析了JavaScript中的变量作用域规则以及闭包的...

    灵活JavaScript库,用于创建Squircley Magic:sparkles:-JavaScript开发

    灵活JavaScript库,用于创建squircleymagic:sparkles:squircley.js squircley.js是来自https://squircley.app的核心squirclularmagic:sparkles:,并包装到一个简单的,具有0依赖性JavaScript库中。 squircley.js可以...

    Head First Javascript源码

    在JavaScript的世界里,源码分析尤其关键,因为JavaScript是动态类型语言,其灵活性和动态特性使得理解和调试代码更加复杂。 首先,我们需要了解JavaScript的基础知识。JavaScript是一种解释型、基于原型的脚本语言...

    ArcGis-for-javaScript最全中文API.pdf

    ArcGIS JavaScript API ...ArcGIS JavaScript API 是一个功能强大且灵活的开发工具,允许开发者创建交互式的 Web 地图应用程序。本文对 ArcGIS JavaScript API 进行了详细的介绍,并提供了多个示例来帮助读者快速上手。

    JavaScript小技巧全集 JavaScript教程 JavaScript源代码集

    这种灵活性使得JavaScript易于上手,但也可能导致一些类型相关的错误,需要开发者有清晰的理解和谨慎的处理。 在JavaScript中,函数是一等公民,可以作为值传递,也可以作为返回值。例如,创建一个简单的函数: ```...

    javaScript api

    Fetch API提供了一种更现代、更灵活的方式来执行网络请求,支持Promise,可以更方便地处理异步操作。 4. BOM:Browser Object Model是浏览器提供的JavaScript API,允许开发者访问和控制浏览器的特性,如浏览器窗口...

    .NET的Javascript运行库Javascript.Net

    JavaScript.Net 是一个基于.NET框架...总的来说,JavaScript.Net为.NET开发者提供了一种强大的方式来利用JavaScript的灵活性和广泛的功能,使得两种语言可以更紧密地协同工作,提升了.NET应用程序的可扩展性和创新性。

    JavaScript手册 JavaScript手册

    对象可以通过引用来传递,而不是复制,这种特性使得对象在JavaScript中非常灵活。对象的原型链是JavaScript继承的核心机制,通过__proto__属性或Object.getPrototypeOf方法可以访问原型。 数组是有序的数据集合,...

    head first javascript 中文版.pdf

    此外,JavaScript支持函数表达式和匿名函数,这使得函数可以更加灵活地使用。闭包是JavaScript中的一个高级概念,它允许函数访问并操作其外部作用域的变量,即使在其父函数已经执行完毕的情况下。 事件驱动编程是...

    org.mozilla.javascript-1.7.2.jar

    使用"org.mozilla.javascript-1.7.2.jar",开发者可以方便地在Java应用程序中嵌入JavaScript代码,实现动态行为或者提供灵活的配置。例如,在Web应用中,可以使用Rhino引擎来解析用户输入的JavaScript代码,进行安全...

    javascript中文手册 javascript中文手册

    此外,JavaScript还支持原型继承和闭包,这些高级特性让代码更加灵活和强大。 JavaScript与DOM(Document Object Model)紧密相连,允许开发者通过JavaScript操作网页的HTML元素,实现动态更新页面内容、响应用户...

    Effective JavaScript 编写高质量JavaScript代码的68个有效方法1

    作者详细解析了JavaScript中的方法和类,并探讨了如何在不同场景下灵活运用函数,包括高阶函数和闭包,这些都是JavaScript中强大的功能。 第四章主要讨论原型和对象,这是理解JavaScript继承机制的关键。通过解释...

    javascript权威指南 epub书及源码

    JavaScript还具有动态类型和弱引用的特点,这使得它在处理数据时具有灵活性,但也可能导致一些陷阱。书中会讨论这些特性的使用和潜在问题,帮助开发者避免常见的错误。 事件驱动模型是JavaScript在Web开发中的一个...

    JavaScript学习指南

    函数作为一等公民的特性使得JavaScript具有很高的灵活性,可以用来创建闭包、高阶函数等高级概念。事件处理和DOM操作是前端开发中的重要部分,用于改变网页内容和用户交互。 在“JavaScript权威指南”中,你可以...

    javascript

    JavaScript,又被称为JS,是一种广泛应用于...总的来说,JavaScript是一门强大且灵活的语言,涵盖了从网页交互到服务器开发的众多应用场景。对于想要投身互联网行业的学生来说,深入理解和熟练掌握JavaScript至关重要。

    karas:CanvasSvg上用于RIA的灵活JavaScript框架

    karas(鸦) 用于Canvas / Svg上RIA的灵活JavaScript框架。 karas实现了一个微型浏览器引擎,同时扩展了CSS / WAA在样式/动画上的标准,增强类似SVG的矢量标签描述语法,结合JSX / React的开发方式,形成了对前端...

Global site tag (gtag.js) - Google Analytics