例子:
【注意事项】:
1) 需要用这种继承的写法,请将下面的方法当作javascript 的api,不要覆盖。
方法名称
|
方法作用
|
参数说明
|
getClassName
|
获得对象的名称。
|
无
|
inherit
|
实现对象之间的单一多层的继承
|
1:被继承的父类名,非字符串
2:父类初始化需要的参数
|
father
|
如果子类覆盖了父类的某个方法,用它来回调父类的这个方法
|
1:回调的方法名称,字符串格式
2:回调方法需要的参数
|
typeOf
|
判断子类的类型,与typeof是不一样的。
|
类的名称,非字符串形式。
|
toParent
|
将子类转换成父类
|
父类的名字,非字符串形式。
|
2) 在子类的
第一行执行继承。如果要覆盖父类的某个方法,并且要用父类的这个方法,那么请在子类的方法中回调父类的那个方法。
3.3、活用闭包
所谓闭包,通俗的讲,使用函数的范围,已经不在函数的定义范围。
优点:进一步提高代码的封装性。
缺点:ie6的垃圾收集机制存在着bug,当进行ui编码时会出现一些问题。
闭包的特点
1、作为一个函数变量的一个引用 - 当函数返回时,其处于激活状态。
2、一个闭包就是当一个函数返回时,一个没有释放资源的栈区。
闭包的写法
- function A(){
- var answer1 = function(str){
- alert("这里提供复杂功能1");
- }
- var answer2 = function(str){
- alert("这里提供复杂功能2");
- }
- this.getAnswer = function(flag){
- if(flag)
- return answer1;
- else
- return answer2;
- }
- }
-
- var control = new A();
- var a1 = control.getAnswer(true);
- var a2 = control.getAnswer(false);
- a1();
- a2();
-
-
-
-
-
- function A(){
- var answer1 = function(str){
- alert("这里提供复杂功能1");
- }
- var answer2 = function(str){
- alert("这里提供复杂功能2");
- }
- this.getAnswer = function(flag){
- if(flag)
- return answer1;
- else
- return answer2;
- }
- this.answer = function(){
- answer1();
- }
- }
-
- var control = new A();
- var a1 = control.getAnswer(true);
- a1();
- a1 = "1";
- control.answer();
3.4、函数式编程
它的基本特点是:将函数(或对象)赋值给一个变量。前面我们已经采用了这种写法。
优点:代码可读性好。适合web页ui方面的开发
错误的写法
- function A(){
- alert(B());
- var B = function(){
- return "ok";
- }
- }
- A();
正确的写法
- function A(){
- var B = function(){
- return "ok";
- }
- alert(B());
- }
- A();
附:javascript是非常灵活的:
1)基于对象的:有对象与类的概念,也有独立于对象的函数概念
2)解释型:请把握住运行时与时间轴这个概念:它能自动转化变量的类型与这个特点紧密相连;一段代码是当作函数,还是一个类,也与这个有关。
2)弱类型:会将变量自动转化为当前合适的类型或者基本数据类型,这个特点基于它是解释型的语言。
这些充分体现了javascript的灵活型。建议使用它,不要走极端:将其对象的一面在需要的时候充分运用,但没有必要任何情况下都这样做。所谓灵活:在不同的情况,可以有适合的方式可用。
(完毕)
分享到:
相关推荐
JavaScript是Web开发中不可或缺的一部分,尤其在现代网页设计中,其使用越来越广泛。然而,不同浏览器对JavaScript的处理效率存在差异,尤其是对于IE浏览器来说,虽然IE8在性能上有显著提升,但仍落后于如Chrome这样...
总之,“js全面基础与提速”教程将带你从JavaScript基础入手,逐步掌握AJAX和jQuery的使用,为Web开发打下坚实基础。无论你是初学者还是希望提升技能的开发者,这个教程都能为你提供宝贵的学习素材。
#### 二、jQuery全面提速的意义与目的 在《jQuery全面提速》这本书中,作者赵增敏旨在帮助读者深入理解如何优化基于jQuery的应用程序,提高其性能表现。随着网络技术的发展和用户对网页加载速度要求的不断提高,...
- 学习使用jQuery等JavaScript库来简化DOM操作,提高开发效率。 - 图片元素使用`<img>`标签时,应设置`title`和`alt`属性;`<head>`标签中包含`title`、`keywords`和`description`等元信息。 - 开启GZIP压缩功能...
ASP 提速的六种方法 在 ASP.NET MVC 开发中,提高应用程序的性能是一件非常重要的事情。以下是六种可以提高 ASP 应用程序速度的方法。 应用程序缓存 应用程序缓存是一种非常有效的提高应用程序速度的方法。通过将...
* SPA 什么是 SPA、单页面 SEO 解决方案、开发无框架单页面应用、可伸缩的同构 JavaScript 代码 动画相关 * 动画类型、跟动画有关的数学和物理公式、缓动原理与实现、常用动画效果与缓动、SVG 动画原理性质 性能...
【网页加载速度优化策略】 在当今的互联网世界中,用户对网页速度的期待越来越高,哪怕只有0.1秒的差距,也可能影响用户的满意度和...记住,用户体验始终是设计和开发的核心,快速响应的页面是赢得用户青睐的关键。
《jQuery全面提速》源代码是针对JavaScript库jQuery的学习资源,旨在帮助开发者深入理解jQuery的内部工作原理,并通过优化技巧提升其在项目中的运行效率。jQuery以其简洁的API和强大的功能深受开发者喜爱,但随着Web...
- 第二部分定义列表样式,如内部位置、方形符号和自定义图像。 - 第三部分设置文本颜色和内边距。 笔试题目涉及CSS布局、JavaScript实现、H5特性、正则表达式、服务端编程等,这些题目旨在测试实际编程能力和问题...
在当今的前端开发领域,JavaScript作为全栈开发的核心语言之一,在浏览器、移动端以及服务器端均有着广泛的运用。掌握高性能的JavaScript编写技巧,对于前端程序员来说至关重要。本文将详细介绍在编写高性能...
本书结合Web 2.0以来Web开发领域的最新形势和特点,介绍了网站性能问题的现状、产生的原因,以及改善或解决性能问题的原则、技术技巧和最佳实践。重点关注网页的行为特征,阐释优化Ajax、CSS、JavaScript、Flash和...
面向数字娱乐市场的HTML网站源码,为开发提速。这份源码针对娱乐游戏音乐领域,提供即用型解决方案,减少从头开发的繁琐流程。精心设计的界面与用户交互元素,保证吸引目标用户群体。集成的音乐播放功能,提升用户...
百度作为中国的互联网公司,通过其云端一体开发平台,为开发者提供了云端切分机制。开发者可以根据任务的时延要求和计算量来决定任务的处理位置,将计算密集型的任务放在云端处理,而实时性要求高的任务则保留在本地...
微信小程序点餐系统的设计和开发,是信息技术领域内移动互联网应用发展的一个分支,随着智能手机的普及和移动网络的提速,这一领域正迅速发展。微信小程序,作为一种新兴的轻量级应用程序,因其便捷性、无需下载安装...
3. Windows Mobile 6.5的发布和Gesture API:Windows Mobile 6.5发布了,带来了Gesture API和Widgets,Gesture API可以判断拖拽、缩放等功能,Widgets支持W3C标准,使用HTML和JavaScript开发。 4. 移动应用格局的...
FastClick是由FT Labs开发的一个轻量级JavaScript库,它的核心功能是检测并处理触摸结束事件,从而在用户单击后立即触发点击事件,避免了系统默认的300毫秒等待时间。这在移动Web应用中尤其重要,因为快速的交互反馈...
基于 Flash,AdobeFlash 通过自己的 Socket 实现完成数据交换,再利用 Flash 暴露出相应的接口为 JavaScript 调用,从而达到实时传输目的。此方式比轮询要高效,且因为 Flash 安装率高,应用场景比较广泛,但在移动...
【4】如果基础还行,或热爱钻研,可基于此项目进行二次开发,DIY其他不同功能,欢迎交流学习。 【注意】 项目下载解压后,项目名字和项目路径不要用中文,建议解压重命名为英文名字后再运行!有问题私信沟通,祝...
【描述】中的"后台目录:manage"表明在项目中存在一个名为"manage"的管理界面或目录,用于维护和更新数据库,可能是第6次中国铁路大提速后的列车时刻数据。这提示我们,该系统可能根据实际的铁路运行情况进行了及时的...