ExtJs 备忘录(9)—— Ext常用属性、方法小结 [系列完]

简介:

正文 
 

  一、Ext

    1.1  Ext.isEmpty(v, allowBlank)  //是否为空[链接]

    1.2  Ext.isArray(v)     //是否为数组集合

    1.3  Ext.isPrimitive(v)    //是否是基本数据类型String/Number/Boolean

    1.4  Ext.isFunction(v)    //是否是函数

    1.5  Ext.isNumber(v)     //是否是数字

    1.6  Ext.isString(v)    //是否是字符串

    1.7  Ext.isBoolean(v)   //是否是bool值

    1.8  Ext.isIE/isIE6/isIE7/isIE8...  //判断浏览器

    1.9  Ext.isWindows/isLinux/isMac/isAir  //判断平台(操作系统)

    1.10  Ext.isDefined    //对象是否已经定义

    1.11  Ext.id(el,prefix)  //返回唯一的id值,el位元素Id,prefix为前缀

    1.12  Ext.urlEncode(o, pre)  //将JSON数据转换URL参数串,如{a:1,b:2} => a=1&b=2
 

    1.13  Ext.urlDecode(string, overwrite)  //将url参数列表转换成json格式数据,overwrite如果为true,则后面的同名参数值覆盖前面的同名参数值(默认为false即不覆盖而以数组形式返回)

    1.15  Ext.each(array, fn, scope)  //遍历数组,例:Ext.each([1,2,3],function(value,index,a){ //index:索引号,0开始  value:当前值 a:数组引用 });

    1.16  Ext.encode(o)    //将对象转换成json字符串,详细说明和用法:这里

    1.17  Ext.decode(o)    //将json字符串转换成对象

    [Ext-more.js] 
 

    1.18  Ext.combine()  //数组合并

    1.19  Ext.num(value,defaultValue)  //如果是数字,直接返回本身,否则返回默认值,注意"5"这里也会返回默认值的 

    1.20  Ext.copyTo(dest, source, names)  //拷贝source中names属性列表至dest中

    1.21  Ext.unique(arr)   //剔除数组中重复的元素,让数组每个元素保持唯一

    1.22  Ext.clean(arr)     //复制数组?! 
 

    1.23  Ext.flatten(arr)   //将多维数组转换成一维数组

    1.24  Ext.min(arr, comp)  //查找数组中最小的元素

    1.25  Ext.max(arr, comp)  //查找数组中最大的元素

    1.26  Ext.mean(arr)     //计算数组元素平均值(总和除以个数)

    1.27  Ext.partition(arr, truth)  //根据arr元素的bool值拆分成新的二维数组并返回 例1:Ext.partition([true, false, true, true, false]); // [[true, true, true], [false, false]] 例2:Ext.partition(arr,function(val){ return val == "class1" });
 

    1.28  Ext.invoke(arr, methodName,/*args...*/)  //执行arr数组中对象的methodName方法,args为方法的参数,返回执行结果数组

    1.29  Ext.pluck(arr, prop)  //返回数组中属性名(property name)等于prop的值的新数组 Ext.pluck(arr, "className"); => [arr1.className,arr2.className]

    1.30  Ext.zip({Arrays|NodeLists},{Function}) //压缩多个数组为一个数组, Ext.zip([1,2,3],[4,5,6]); // [[1,4],[2,5],[3,6]],支持Function自定义合并

    1.31  Ext.type(object)  //返回对象的类型:string,number,boolean,function,object,array,regexp,element,nodelist,textnode,whitespace 

 

  二、Ext.util.Format
 

    2.1  Ext.util.Format.capitalize(value);  //首字母大写
2.2  Ext.util.Format.ellipsis(value, len, word);   //从字符串开始处截取len长度显示,超过部分用...表示;word为布尔值,为true时在前面截取的基础上再从' '、'.'、'!'、'?'关键字处截取前面(len),ellipsis("abcde.fghijkl",10,true)返回abcde
2.3  Ext.util.Format.htmlEncode(value);   //HTML编码,将& <  >  “替换为&amp;&lt;&gt;&quot;
2.4  Ext.util.Format.htmlDecode(value);   //HTML解码,与上面相反
2.5  Ext.util.Format.trim(value);       //截取字符串左右的空格
2.6  Ext.util.Format.substr(value, start, length);   //从value指定的start位置开始截取length长度的子串返回
2.7  Ext.util.Format.lowercase(value);        //转换大写
2.8  Ext.util.Format.uppercase(value);       //转换小写
2.9  Ext.util.Format.stripTags(v);          //去除HTML标签:/<\/?[^>]+>/gi
2.10  Ext.util.Format.usMoney(v);       //转换到'$'符号的货币形式
2.11  Ext.util.Format.date(v, format);    //格式化日期输出,format默认格式"m/d/Y"
2.12  Ext.util.Format.round(value, precision);  //四舍五入,precision指精确位数
2.13  Ext.util.Format.number(v, format);    //格式化数字显示
2.14  Ext.util.Format.nl2br(value);     //将字符串中的'\n'替换成'<br />'
2.15  Ext.util.Format.fileSize(value);    //将字节数转成更大的单位KB和MB显示,fileSize(1024) = 1KB
2.16  Ext.util.Format.defaultValue(value, defaultValue);  //如果value未定义或为空字符串则返回defaultValue
2.17  Ext.util.Format.stripScripts(v);   //去除脚本标签
2.18  Ext.util.Format.undef(value);    //如果value未定义,返回空字符串,反之返回value本身 
 


 

  三、扩展JS原有对象

    3.1  String

      3.1.1  .format(format)  //和C#里面是一样的用法

      3.1.2  .toggle(value, other)  //交换值,如果当前值等于value,则被赋值other

    3.2  Array

      3.2.1  .indexOf(o)  //返回元素o在数组ArrayObject中的位置,找不到返回-1

      3.2.2  .remove(o)  //从数组ArrayObject删除元素o

    3.3  Function

      3.3.1  .createInterceptor(fcn, scope)  //创建阻断方法,如果fcn返回false,原方法将不会被执行,参见这里

      3.3.2  .createCallback(/*args...*/)   //创建回调,以无参的函数作为参数,但是现有的方法已经具有了参数,如果直接写上可以用这个来创建一个回调,类似于function(){ //实际的带参调用 } ,见这里1这里2
 

      3.3.3  .createDelegate(obj, args, appendArgs) //创建委托,与上面相比,自己可以访问obj中的属性和方法,见这里
 

      3.3.4  .defer(millis, obj, args, appendArgs)  //定时执行,隔millis毫秒后执行原方法,参见这里

      3.3.5  .createSequence(fcn, scope)    //Ext-more.js中,创建组合方法,执行原方法+fcn,参见这里

 

  四、 其他
 

    4.1  表单

      4.1.1  一次取得表单所有的表单元素key/value集合

        form1.form.getValues()  //form1为Ext.FormPanel,例如:

                         // 注意
                         var  conn  =   new  Ext.data.Connection();
                        conn.request({
                            url: 
' submit.aspx?method=Submit4 ' ,
                            
// 此处与params对应,如果为POST,则服务器端从Request.Form中可以取得到数据,反之从QueryString中取数据
                            method:  ' POST ' , // GET
                            params:form1.form.getValues(),
                            success: 
function (response, opts) {
                                 MsgInfo(response.responseText);
                            }
                        });

        form1.form.setValues(values)     //form1.form.setValues({id:1,name:'aabbcc'}) 赋值

      4.1.2  表单元素取值赋值一次取得

        4.1.2.1  form1.form.findField('TextBox').getValue()

        4.1.2.2  form1.form.getValues().TextBox

        4.1.2.3  form1.form.getFieldValues().TextBox

    4.2  切换皮肤

      Ext.util.CSS.swapStyleSheet("theme", "resources/css/ext/xtheme-orange.css");    //注意路径

 

 
 

注意
 

  1.  本系列Ext版本为 3.0.0

  2.  最新源代码在系列文章第八篇有下载。

  3.  关于ExtJs的优点请移步至系列文章第一篇评论中我的回答,这里就不要再讨论了 :)

 


本文转自over140 51CTO博客,原文链接:http://blog.51cto.com/over140/586532,如需转载请自行联系原作者

相关文章
|
网络协议 ice
STUN, TURN, ICE介绍
STUN STUN协议为终端提供一种方式能够获知自己经过NAT映射后的地址,从而替代位于应用层中的私网地址,达到NAT穿透的目的。STUN协议是典型的Client-Server协议,各种具体应用通过嵌入STUN客户端与STUN Server端通讯来完成交互。
14455 1
|
人工智能 开发框架 搜索推荐
今日 AI 开源|共 10 项| 复合 AI 模型,融合多个开源 AI 模型组合解决复杂推理问题
今日 AI 简报涵盖多项技术革新,包括多模态检索增强生成框架、高保真虚拟试穿、视频生成、生成式软件开发、上下文感知记忆管理等,展示了 AI 在多个领域的广泛应用和显著进步。
673 10
今日 AI 开源|共 10 项| 复合 AI 模型,融合多个开源 AI 模型组合解决复杂推理问题
|
11月前
|
缓存 算法 物联网
【论文专辑】2024年大模型推理优化论文精选第六期
本文整理了 OSDI 2024 和 SOSP 2024 中与大语言模型(LLM)推理优化相关的10篇论文,涵盖 Parrot、ServerlessLLM、dLoRA 等系统,提出的技术如 Chunked Prefill、Prefix-Caching、P/D分离等已被 vLLM 和 TensorRT-LLM 等主流推理引擎采用。这些研究解决了 LLM 推理中的冷启动延迟、资源分配、KV 缓存管理等问题,提升了推理性能和资源利用率。CodeFuse推理优化项目地址https://github.com/codefuse-ai/EasyDeploy
1259 2
|
网络协议 网络安全 网络架构
分布式基础-网络通信协议讲解
分布式基础-网络通信协议讲解
分布式基础-网络通信协议讲解
|
存储 SQL Go
全网最长的sql server巡检脚本分享(1000行)
全网最长的sql server巡检脚本分享(1000行)
389 1
Linux系统如何查看版本信息,内核、发行版、cpu、所有版本
Linux系统如何查看版本信息,内核、发行版、cpu、所有版本
657 10
|
弹性计算 Kubernetes 开发者
利用容器化服务实现游戏服务器的动态资源配置
【8月更文第12天】在游戏行业中,用户基数的变化往往呈现出明显的波动性,特别是在推广活动期间,用户基数会显著增加,而在非推广期则会有所下降。为了应对这种变化,游戏开发者需要一种能够根据用户基数动态调整服务器资源的解决方案,以确保用户体验的同时最大限度地节省成本。容器化服务因其灵活的资源管理和成本控制能力,成为了理想的解决方案。
293 2
|
消息中间件 存储 容灾
深入理解Kafka核心设计及原理(一):初识Kafka
深入理解Kafka核心设计及原理(一):初识Kafka
1571 7
|
分布式计算 大数据 数据处理
Apache Spark在大数据处理中的应用
Apache Spark是大数据处理的热门工具,由AMPLab开发并捐赠给Apache软件基金会。它以内存计算和优化的执行引擎著称,提供比Hadoop更快的处理速度,支持批处理、交互式查询、流处理和机器学习。Spark架构包括Driver、Master、Worker Node和Executor,核心组件有RDD、DataFrame、Dataset、Spark SQL、Spark Streaming、MLlib和GraphX。文章通过代码示例展示了Spark在批处理、交互式查询和实时数据处理中的应用,并讨论了其优势(高性能、易用性、通用性和集成性)和挑战。【6月更文挑战第11天】
490 6
|
负载均衡 算法 Linux
快速掌握keepalived
快速掌握keepalived
390 0