以下是今天所学代码,网上有这篇博客可供参考,另外还是推荐官方文档 ,以下是今天所敲代码:

//用mootools创建类的方式:

//方式1:用标准方式传入一个对象字面量

/*	var Person = new Class({
initialize:function(name,age){
this.name=name;
this.age=age;
}, log:function(){
console.log(this.name+","+this.age);
}
}); var mark = new Person("Tom",20);
mark.log();
*/ //方式2:传入一个普通函数然后用implement方法对类进行扩展: /* var Person = new Class(function(name,age){
this.name=name;
this.age=age;
}); //用implement惊醒扩展:
Person.implement("log",function(){
console.log(this.name+","+this.age);
}); var mark=new Person("cat",22);
mark.log();
*/ //想扩展多个就多次使用implement
/*
var Person = new Class(function(name,age){
this.name=name;
this.age=age;
}); //用implement多次扩展:
Person.implement("getname",function(){
console.log(this.name);
}); Person.implement("getage",function(){
console.log(this.age);
}); var mark=new Person("cat",22);
mark.getname();
mark.getage(); */ //上述用implement进行扩展每次只能扩展一个,想扩展多个可用字面量的方式 /*
var Person = new Class(function(name,age){
this.name=name;
this.age=age;
}); //用字面量的方式用implement扩展:
Person.implement({
"getname":function(){ //注意:getname 加不加分号都行
console.log(this.name);
},
"getage":function(){
console.log(this.age);
}
}); var mark=new Person("cat",22);
mark.getname();
mark.getage(); */ /*
mootools中为对象添加属和方法用implement,
为类添加属性和方法用extend
注意:
实例不能调用为类创建的方法
类不能直接调用为实例创建的方法
类可以通过 类名.prototype.实例上的方法 */ /*
var Person = new Class(function(name,age){
this.name=name;
this.age=age;
});
Person.implement({
instancemethod:function(){
console.log("这是实例方法");
} });
Person.extend({
classmethod:function(){
console.log("这是类方法");
}
}); var mark = new Person("jack",33);
mark.instancemethod();
//mark.classmethod(); //出错,实例不能调用类上的方法
Person.classmethod();
//Person.instancemethod();//出错,类不能嗲用实例上的方法
//可通过prototype的方式调用:
Person.prototype.instancemethod();
*/ //私有成员
// 用闭包为类创建私有成员 /*var Person = (function(){
//私有变量
var privatevalue = 0;
//私有方法
var privatemethod = function(name){
return name;
} return new Class({
initialize:function(name,age){
this.name = name;
this.age = age; privatevalue++;//使用外部的privatevalue形成闭包 },
//共有方法
log:function(){
console.log(privatemethod(this.name)+","+this.age);
},
getprivatevalue:function(){
return privatevalue;
}
}); })(); var mark = new Person("mark",24);
mark.log();
console.log(mark.getprivatevalue());
//console.log(mark.getprivatevalue()); */ //继承 /*
//创建一个基类:
var Animal = new Class({
initialize:function(age){
this.age=age;
}
});
//创建一个子类:
var Cat = new Class({
Extends:Animal,
initialize:function(name,age){
this.parent(age);//使用基类中的
this.name=name;
}
}); var cat = new Cat("rose",20);
console.log(cat.name);
console.log(cat.age); */ //用Extends实现了(单)继承
/*
var Fa = new Class({
add:function(a,b){
return a+b;
},
sub:function(a,b){
return a-b;
}
}); var Son = new Class({
Extends:Fa,
mul:function(a,b){
return a*b;
}
}); var son1 = new Son();
console.log(son1.add(1,2));
console.log(son1.sub(1,2));
console.log(son1.mul(1,2)); */ /*var Fa = new Class({
add:function(a,b){
return a+b;
}
}); var Fa2 = new Class({
add:function(a,b){
return a-b;
}
}); var Son = new Class({
Implements:Fa2,
Extends:Fa //两者没有严格的优先级,后面的总能重写前面的 }); var son1 = new Son();
console.log(son1.add(1,2));*/

初次接触mootools的更多相关文章

  1. 初次接触json...

    这两天发现很多网站显示图片版块都用了瀑布流模式布局的:随着页面滚动条向下滚动,这种布局还会不断加载数据并附加至当前尾部.身为一个菜鸟级的程序员,而且以后可能会经常与网站打交道,我觉得我还是很有必要去尝 ...

  2. 初次接触GWT,知识点总括

    初次接触GWT,知识点概括 前言 本人最近开始研究 GWT(Google Web Toolkit) ,现将个人的一点心得贴出来,希望对刚开始接触 GWT的程序员们有所帮助,也欢迎讨论,共同进步. 先说 ...

  3. [Docker]初次接触

    Docker 初次接触 近期看了不少docker介绍性文章,也听了不少公开课,于是今天去官网逛了逛,发现了一个交互式的小教程于是决定跟着学习下. 仅仅是把认为重点的知识记录下来,不是非常系统的学习和笔 ...

  4. 初次接触:DirectDraw

    第六章 初次接触:DirectDraw 本章,你将初次接触DirectX中最重要的组件:DirectDraw.DirectDraw可能是DirectX中最强大的技术,因为其贯穿着2D图形绘制同时其帧缓 ...

  5. 初次接触scrapy框架

    初次接触这个框架,先订个小目标,抓取QQ首页,然后存入记事本. 安装框架(http://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/install.html) ...

  6. javaweb中的乱码问题(初次接触时写)

    javaweb中的乱码问题 在初次接触javaweb中就遇到了乱码问题,下面是我遇到这些问题的解决办法 1. 页面乱码(jsp) 1. 在页面最前方加上 <%@ page language=&q ...

  7. 初次接触Java

    今天初次接触Eclipse,学着用他来建立java工程,话不多说,来看看今天的成果! 熟悉自己手中的开发工具,热热身 刚上手别慌,有问题找度娘 刚刚拿到这个软件的安装包我是一脸懵逼的,因为是从官网下载 ...

  8. -1.记libgdx初次接触

    学习一门技术最难的是开发环境变量配置和工具配置,以下为我初次接触libgdx时遇到的问题 几个难点记录下 gradle 直接用下到本地,然后放到d盘,链接到就行(gradle-wrapper.prop ...

  9. tensorflow初次接触记录,我用python写的tensorflow第一个模型

    tensorflow初次接触记录,我用python写的tensorflow第一个模型 刚用python写的tensorflow机器学习代码,训练60000张手写文字图片,多层神经网络学习拟合17000 ...

随机推荐

  1. ffmpeg中的sws_scale算法性能测试

    经常用到ffmpeg中的sws_scale来进行图像缩放和格式转换,该函数可以使用各种不同算法来对图像进行处理.以前一直很懒,懒得测试和甄 别应该使用哪种算法,最近的工作时间,很多时候需要等待别人.忙 ...

  2. CLR via C#深解笔记一 - CLR & C# 基础概念

    写在前言   .Net Framework并不是Win 32 API 和COM上的一个抽象层.   某种程度上,它是自己的操作系统,有自己的内存管理器,自己的安全系统,自己的文件加载器,自己的错误处理 ...

  3. 使用GROUP BY统计记录条数 COUNT(*) DISTINCT

    例如这样一个表,我想统计email和passwords都不相同的记录的条数 CREATE TABLE IF NOT EXISTS `test_users` ( `email_id` ) unsigne ...

  4. 使用nodejs搭建图片服务器(一)

    背景 当我们开发一个Web项目的时候,为了将图片管理与web服务分离开,通常都会搭建一个图片服务器. 之所以选择nodejs是因为使用nodejs来搭建web项目相当简单而且快速,虽然这个图片服务器很 ...

  5. [转]VS2010中水晶报表安装应用及实例

    基本分类如下:第一部分:VS2010简介VS2010是微软的提供的一套完整的开发环境,功能也是相当的大微软宣布了下一代开发工具和平台的正式名称,分别称为“Visual Studio Team Syst ...

  6. MeshCombineUtility.cs method `GetTriangleStrip' of type `UnityEngine.Mesh' could be found

    1) Assets/Standard Assets/Scripts/MeshCombineUtility.cs(27,74): error CS1061: Type `UnityEngine.Mesh ...

  7. DDD:Command模式的好处

    背景 会有朋友问我为啥用命令模式(Command Pattern)组织应用层,先看看MartinFowler咋说:http://martinfowler.com/bliki/CommandOrient ...

  8. [转载]基于MVC4+EasyUI的Web开发框架经验总结(8)--实现Office文档的预览

    在博客园很多文章里面,曾经有一些介绍Office文档预览查看操作的,有些通过转为PDF进行查看,有些通过把它转换为Flash进行查看,但是过程都是曲线救国,真正能够简洁方便的实现Office文档的预览 ...

  9. Exchange Server简介与搭建

    一.Exchange Server简介Exchange Server 是微软公司的一套电子邮件服务组件,是个消息与协作系统. 简单而言,Exchange server可以被用来构架应用于企业.学校的邮 ...

  10. iOS-Debug调试

    转载:http://www.cnblogs.com/Leo_wl/p/4423922.html