一周学会Mootools 1.4中文教程:(4)类型
2011-11-14 12:53
405 查看
Mootools的类型主要包含下边几部分:String:字符串;Number:数字;Array:数组;Object:对象;Json:;Cookie:.
这也是我们今天的讲述重点.每一种数据类型Mt都为其扩展了自己的方法,这一点通过我为大家提供的Editplus素材文件就能看的出来,因为涉及的方法比较多,所以我就挑选几个常用的方法给大家讲解一下,其他没有讲到的方法请大家自行查阅素材文件内的说明和示例.
这部分的用法很简单,你只需要知道自己现在正在操作的是什么数据类型,知道了数据类型之后要知道mt为该类型数据的操作都提供了哪些可供我们使用的方法即可,如果你不能确认自己现在操作的是什么类型的数据,你只需要这样一句就能知道了.
String:
上边这9个方法是我认为在操作String类型的数据时比较常用的方法,大家可以认真看一下每一个的用途及例子.相信并不难理解.
Number:
Array:
Object:
JSON:
Cookie:
这一课的内容颇多,请大家多练习.
相关课程:
一周学会Mootools 1.4中文教程:序论
一周学会Mootools 1.4中文教程:(1)Dom选择器
一周学会Mootools 1.4中文教程:(2)函数
一周学会Mootools 1.4中文教程:(3)事件
一周学会Mootools 1.4中文教程:(4)类型
一周学会Mootools 1.4中文教程:(5)Ajax
一周学会Mootools 1.4中文教程:(6)动画
一周学会Mootools 1.4中文教程:(7)汇总收尾
其他关于Mootools 1.4的文章:
我写的Lightbox效果插件,基于MooTools 1.4
我写的万年历插件(含天干地支,农历,阳历,节气,各种节假日等),基于MooTools 1.4
我写的类似本站首页左上角的菜单的效果插件,基于MooTools 1.4
Mootools中delay这个延迟函数的高级用法
Mootools中使用bind给函数绑定对象
Mootools中使用extend和implement给你的函数扩展功能或方法
自己写个扩展把Mootools的语法改的和Jquery的语法一模一样
Mootools1.4中自定义事件
用Mootools1.4写了一个随着鼠标移动而背景图也跟着移动的东西
这也是我们今天的讲述重点.每一种数据类型Mt都为其扩展了自己的方法,这一点通过我为大家提供的Editplus素材文件就能看的出来,因为涉及的方法比较多,所以我就挑选几个常用的方法给大家讲解一下,其他没有讲到的方法请大家自行查阅素材文件内的说明和示例.
这部分的用法很简单,你只需要知道自己现在正在操作的是什么数据类型,知道了数据类型之后要知道mt为该类型数据的操作都提供了哪些可供我们使用的方法即可,如果你不能确认自己现在操作的是什么类型的数据,你只需要这样一句就能知道了.
alert(typeOf(???));
String:
//from 把传入的参数转为字符串,如: String.from(2);//returns '2' String.from(true);//returns 'true' //uniqueID 产生一个独一无二的ID alert(String.uniqueID()) //trim 清除字符串两端的空白字符串 alert(' i like cookies '.trim()) //toInt 将字符串转为数字,并以给出的基准进制进行转换 alert('4em'.toInt());//returns 4 '10px'.toInt();//returns 10 //toFloat 将字符串转为浮点数 alert('95.25%'.toFloat());//returns 95.25 '10.848'.toFloat();//returns 10.848 //toLowerCase/toUpperCase大小写转换 alert('AA'.toLowerCase()) //test 使用正则表达式对字符串进行匹配测试 alert('I like cookies'.test('COOKIE','i'));忽略大小写检查字符串内是否包含指定的子字符串 //escapeRegExp 将字符串中对正则表达式敏感的字符进行转义 alert('animals.sheep[1]'.escapeRegExp());//returns 'animals\.sheep\[1\]' //substitute 类似模板中的标签替换 var my1='{a}|{b}|{b_2}.'; var my2 ={a:'这是标签a,',b:'这是标签b',b_2:'这个呢?'}; my1.substitute(my2);
上边这9个方法是我认为在操作String类型的数据时比较常用的方法,大家可以认真看一下每一个的用途及例子.相信并不难理解.
Number:
//from 把传入的参数转为Number alert(Number.from('12')); //returns 12 Number.from('hello') //returns null //random 返回一个随机数 Number.random(5,20);//returns a random number between 5 and 20. //round 四舍五入 (12.45).round() //returns 12 (12.45).round(1) //returns 12.5 (12.45).round(-1) //returns 10 //toInt 将数字转为数字,并以给出的基准进制进行转换 (111).toInt();//returns 111 (111.1).toInt();//returns 111 (111).toInt(2);//returns 7 //toFloat 将数字转为浮点数 (111).toFloat();//returns 111 (111.1).toFloat();//returns 111.1 //常用数学方法 /* abs acos asin atan2 ceil cos exp floor log max min pow sin sqrt tan */ (-1).abs();//returns 1 (3).pow(4);//returns 81
Array:
//常见的Array格式 var arr=[1,2,3,4]; var arr=new Array(1,2,3,4); //Array.each 循环遍历数组 var arr=['Sun','Mon','Tue']; Array.each(arr,function(day,index){ alert('name:'+day+',index:'+index); }); //every 如果数组中的每一项都通过了给定函数的测试,则返回true var arr=[10,4,25,100]; var areAllBigEnough=arr.every(function(item,index){ return item > 20; }); //clean 在现有数组的基础上建立一个新数组,每一个成员必须是已经定义过的,IE浏览器则必须是非null和非undefined的 var myArray=[null,1,0,true,false,'foo',undefined,'']; myArray.clean() //returns [1,0,true,false,'foo',''];//false也是合法的,因为他也是已经定义过的 //indexOf 返回数组中和给出参数值相等的项的索引号;如果未找到相等的项,则返回-1 ['apple','lemon','banana'].indexOf('lemon');//returns 1 ['apple','lemon'].indexOf('banana');//returns -1 //map 调用外部函数循环处理现有数组内的每个项目,并产生新数组 var timesTwo=[1,2,3].map(function(item,index){ return item * 2; });//timesTwo=[2,4,6]; //some 如果数组中至少有一个项通过了给出的函数的测试,则返回true var isAnyBigEnough=[10,4,25,100].some(function(item,index){ return item > 20; });//isAnyBigEnough=true //flatten 把多维数组转换为一维数组 var myArray=[1,2,3,[4,5,[6,7]],[[[8]]]]; var newArray=myArray.flatten();//newArray is [1,2,3,4,5,6,7,8] //empty 清空数组 var myArray=['old','data']; myArray.empty();//myArray is now [] //erase 从数组内移除一个项目 ['Cow','Pig','Dog','Cat','Dog'].erase('Dog') //returns ['Cow','Pig','Cat'] ['Cow','Pig','Dog'].erase('Cat') //returns ['Cow','Pig','Dog'] //getRandom 从数组内随机提取键值 ['Cow','Pig','Dog','Cat'].getRandom();//returns one of the items //append 合并数组,新数组追加到末尾 var myOtherArray=['green','yellow']; ['red','blue'].append(myOtherArray);//returns ['red','blue','green','yellow']; myOtheArray;//is now ['red','blue','green','yellow']; [0,1,2].append([3,[4]]);//[0,1,2,3,[4]] //contains 测试指定项是否在数组中存在 ['a','b','c'].contains('a');//returns true ['a','b','c'].contains('d');//returns false
Object:
//常见的Object格式 var O={a:0,b:1}; //each 遍历 var O={first:'Sunday',second:'Monday',third:'Tuesday'}; Object.each(O,function(value,key){ alert('The '+key+' day of the week is '+value); }); //merge 合并一组Obj生成新Obj var obj1 ={a:0,b:1}; var obj2 ={c:2,d:3}; var obj3 ={a:4,d:5}; var merged=Object.merge(obj1,obj2,obj3);//returns{a:4,b:1,c:2,d:5},(obj2,and obj3 are unaltered) merged === obj1;//true,obj1 gets altered and returned as merged object var nestedObj1 ={a:{b:1,c:1}}; var nestedObj2 ={a:{b:2}}; var nested=Object.merge(nestedObj1,nestedObj2);//returns:{a:{b:2,c:1}} //append 合并Obj,追加到尾部 var firstObj ={ name:'John', lastName:'Doe' }; var secondObj ={ age:'20', sex:'male', lastName:'Dorian' }; Object.append(firstObj,secondObj); //firstObj is now:{name:'John',lastName:'Dorian',age:'20',sex:'male'}; //subset 从Obj内获取子集 var object ={ a:'one', b:'two', c:'three' }; Object.subset(object,['a','c']);//returns{a:'one',c:'three'} //map 调用外部函数循环处理现有Obj内的每个项目,并产生新Obj var myObject ={a:1,b:2,c:3}; var timesTwo=Object.map(myObject,function(value,key){ return value * 2; });//timesTwo now holds an object containing:{a:2,b:4,c:6}; //keys 返回Obj内所有的key成为一个数组 var myObject ={e:10,b:4,c:25,d:100}; var keys=Object.keys(myObject); alert(keys) //values 返回Obj内所有的value成为一个数组 var myObject ={e:10,b:4,c:25,d:100}; var keys=Object.values(myObject); alert(keys) //getLength 返回Obj的元素个数 var myObject ={ name:'John', lastName:'Doe' }); Object.getLength(myObject);//returns 2 //keyOf 根据value查询Obj内的key的名称;如果未找到相等的项,则返回false var myObject ={a:'one',b:'two',c:3}; Object.keyOf(myObject,'two');//returns 'b' Object.keyOf(myObject,3);//returns 'c' Object.keyOf(myObject,'four');//returns false //contains 测试Obj内是否存在某个值 var myObject ={a:'one',b:'two',c:'three'}; Object.contains(myObject,'one');//returns true Object.contains(myObject,'four');//returns false //toQueryString 把Obj内的项目转换为Url地址,然后URIencode Object.toQueryString({apple:'red',lemon:'yellow'});//returns 'apple=red&lemon=yellow' Object.toQueryString({apple:'红色',lemon:'yellow'});//apple=%E7%BA%A2%E8%89%B2&lemon=yellow Object.toQueryString({apple:'red',lemon:'yellow'},'fruits');//returns 'fruits[apple]=red&fruits[lemon]=yellow'
JSON:
//常见的Json格式 var J={"_5":"停","_4":"W\\i","_3":"麥\/克"}; //encode 把Obj或数组转为Json var fruitsJSON=JSON.encode({apple:'red',lemon:'yellow'});//returns:'{"apple":"red","lemon":"yellow"}' //decode 把一个Json转为Obj var myObject=JSON.decode('{"apple":"red","lemon":"yellow"}');//returns:{apple:'red',lemon:'yellow'}
Cookie:
//write 写入 var myCookie=Cookie.write('username','JackBauer'); //有效期为1天: var myCookie=Cookie.write('username','JackBauer',{duration:1}); //read 读取 Cookie.read('username'); //dispose 销毁一个cookie Cookie.dispose('username');//Bye-bye JackBauer! //最好的写法 var myCookie=Cookie.write('username','JackBauer',{duration:1,domain:'mootools.net'}); if(Cookie.read('username') == 'JackBauer'){myCookie.dispose();}
这一课的内容颇多,请大家多练习.
相关课程:
一周学会Mootools 1.4中文教程:序论
一周学会Mootools 1.4中文教程:(1)Dom选择器
一周学会Mootools 1.4中文教程:(2)函数
一周学会Mootools 1.4中文教程:(3)事件
一周学会Mootools 1.4中文教程:(4)类型
一周学会Mootools 1.4中文教程:(5)Ajax
一周学会Mootools 1.4中文教程:(6)动画
一周学会Mootools 1.4中文教程:(7)汇总收尾
其他关于Mootools 1.4的文章:
我写的Lightbox效果插件,基于MooTools 1.4
我写的万年历插件(含天干地支,农历,阳历,节气,各种节假日等),基于MooTools 1.4
我写的类似本站首页左上角的菜单的效果插件,基于MooTools 1.4
Mootools中delay这个延迟函数的高级用法
Mootools中使用bind给函数绑定对象
Mootools中使用extend和implement给你的函数扩展功能或方法
自己写个扩展把Mootools的语法改的和Jquery的语法一模一样
Mootools1.4中自定义事件
用Mootools1.4写了一个随着鼠标移动而背景图也跟着移动的东西
相关文章推荐
- 一周学会Mootools 1.4中文教程:(4)类型
- 一周学会Mootools 1.4中文教程:(5)Ajax
- 一周学会Mootools 1.4中文教程:序论
- 一周学会Mootools 1.4中文教程:(6)动画
- 一周学会Mootools 1.4中文教程:(6)动画
- 一周学会Mootools 1.4中文教程:(1)Dom选择器
- 一周学会Mootools 1.4中文教程:(2)函数
- 一周学会Mootools 1.4中文教程:序论
- 一周学会Mootools 1.4中文教程:(7)汇总收尾
- 一周学会Mootools 1.4中文教程:序论
- 一周学会Mootools 1.4中文教程:(1)Dom选择器
- 一周学会Mootools 1.4中文教程:(5)Ajax
- 一周学会Mootools 1.4中文教程:(2)函数
- 一周学会Mootools 1.4中文教程
- 一周学会Mootools 1.4中文教程:(3)事件
- 一周学会Mootools 1.4中文教程:(3)事件
- 一周学会Mootools 1.4中文教程:(7)汇总收尾
- 一周学会FLEX中文视频教程
- MSSQL优化教程之1.4 其他几种类型的页面
- Swift中文教程(一)基础数据类型