基础篇:第五篇,Ext.util.Format类是Ext对数据进行格式化操作的一个类(转载)作者殷良胜

简介:

Ext.util.Format类是Ext对数据进行格式化操作的一个类,这篇会把所有的方法都讲解下,因为每个方法都会用到.因为每个方法都和我们用到的服务器端语言中所常用到的方法一样,看了名称就知道什么意思.这里我会把Ext封装起来的源代码复制出来,看了之后就能够更加理解它的方法的意义了.

 <div>
    <script type="text/javascript">
    function ready()
    {
        //说明,这里会将每个方法执行的结果都通过消息框的方式展现出来
        //定义一个字符串
        var testStr = "abcdefghijklmnopqrstuvwxyz";
        
        //capitalize调用方式:       

        var capitalizeResult = Ext.util.Format.capitalize(testStr);
        //capitalize功能
        var capitalizeValue = "capitalize()方法的功能:将首字符串的第一个字母大写!";        
        Ext.Msg.alert("原字符串:"+testStr,"执行Ext.util.Format.capitalize(testStr)方法"+"返回的结果:"+capitalizeResult+"<br/>"+capitalizeValue);

//capitalize方法的源代码
        var capitalize = function(value)
        {
            return !value ? value : value.charAt(0).toUpperCase() + value.substr(1).toLowerCase();
        };

效果图:
       


        //ellipsis调用方式:
        var ellipsisResult = Ext.util.Format.ellipsis(testStr,9);
        //ellipsis功能
        var ellipsisValue = "capitalize()方法的功能:如果testStr的长度大于9,那么就将字符串截取总长度为9,但最后三个字符却要用...表示,总长度为9的字符串实际上是由6个字符加上一个省落号表示的!"
        Ext.Msg.alert("原字符串:"+testStr,"执行Ext.util.Format.ellipsis(testStr,9)方法"+"返回的结果:"+ellipsisResult+"<br/>"+ellipsisValue);

//ellipsis方法的源代码
        var ellipsis = function(value, len)
        {
            if(value && value.length > len)
            {
                return value.substr(0, len-3)+"...";
            }
            return value;
        };

效果图:


                
        //uppercase调用方式:
        var uppercaseResult = Ext.util.Format.uppercase(testStr);
        //uppercase功能
        var uppercaseValue = "uppercase()方法的功能:把字符串中转换成大写!"
        Ext.Msg.alert("原字符串:"+testStr,"执行Ext.util.Format.uppercase(testStr)方法"+"返回的结果:"+uppercaseResult+"<br/>"+uppercaseValue);

//uppercase方法的源代码
        var uppercase = function(value)
        {
            return String(value).toUpperCase();
        };

效果图:


        
        //lowercase调用方式:
        var lowercaseResult = Ext.util.Format.lowercase(uppercaseResult);
        //lowercase功能
        var lowercaseValue = "lowercase()方法的功能:把字符串中转换成小写!"
        Ext.Msg.alert("字符串:"+uppercaseResult,"执行Ext.util.Format.lowercase(lowercaseResult)方法"+"返回的结果:"+lowercaseResult+"<br/>"+lowercaseValue);

//lowercase方法的源代码
        var lowercase = function(value)
        {
            return String(value).toLowerCase();
        };

效果图:


        
        //substr调用方式:
        var substrResult = Ext.util.Format.substr(testStr,5,9);
        //substr功能
        var substrValue = "substr()方法的功能:将字符串按照指定的位置截取指定长度的新字符串!"
        Ext.Msg.alert("原字符串:"+testStr,"执行Ext.util.Format.substr(testStr)方法"+"返回的结果:"+substrResult+"<br/>"+substrValue);

//substr方法的源代码

var substr = function(value, start, length)
        {
            return String(value).substr(start, length);
        };

效果图:


        //usMoney调用方式:
        var usMoneyResult = Ext.util.Format.usMoney("1000");
        //usMoney功能
        var usMoneyValue = "usMoney()方法的功能:把字符串或者数字转换成美圆字符串!"
        Ext.Msg.alert("字符串:"+"1000","执行Ext.util.Format.usMoney(1000)方法"+"返回的结果:"+usMoneyResult+"<br/>"+usMoneyValue);

//usMoney方法的源代码
        var usMoney = function(v)
        {
            v = (Math.round((v-0)*100))/100;
            v = (v == Math.floor(v)) ? v + ".00" : ((v*10 == Math.floor(v*10)) ? v + "0" : v);
            v = String(v);
            var ps = v.split('.');
            var whole = ps[0];
            var sub = ps[1] ? '.'+ ps[1] : '.00';
            var r = /(\d+)(\d{3})/;
            while (r.test(whole)) 
            {
                whole = whole.replace(r, '$1' + ',' + '$2');
            }
            v = whole + sub;
            if(v.charAt(0) == '-')
            {
                return '-$' + v.substr(1);
            }
            return "$" +  v;
        };

效果图:


        
        //trim调用方式:
        var trimResult = Ext.util.Format.trim("                          1000                    ");
        //trim功能
        var trimValue = "trim()方法的功能:去掉字符串中的左右空格!"
        Ext.Msg.alert("原字符串:"+"    1000    ","执行Ext.util.Format.trim('    1000    ')方法"+"返回的结果:"+trimResult+"<br/>"+trimValue);

//trim方法的源代码
        var trim = function(value)
        {
            return String(value).replace(trimRe, "");
        };
效果图:

       
        //fileSizeResult调用方式:
        var fileSizeResult = Ext.util.Format.fileSize("1024");
        //fileSizeResult功能
        var fileSizeValue = "fileSize()方法的功能:把代表字节的数据值转换成代表文件大小的字符串,如1024就转换成1kb!"
        Ext.Msg.alert("原字符串:1024","执行Ext.util.Format.fileSize(1024)方法"+"返回的结果:"+fileSizeResult+"<br/>"+fileSizeValue);

//fileSize方法的源代码
        var fileSize = function(size)
        {
            if(size < 1024)
            {
                return size + " bytes";
            } 
            else if(size < 1048576) 
            {
                return (Math.round(((size*10) / 1024))/10) + " KB";
            } 
            else 
            {
                return (Math.round(((size*10) / 1048576))/10) + " MB";
            }
        };
效果图:    
    }
    Ext.onReady(ready);
    </script>
    </div>

 

除此之外还有几个方法,以后有时间会继续说明,不过,很多方法我希望能够自己测试下,然后就可以举一反三了.

多看看ext自带的文档,非常全,是英文的,对学习英语有很有帮助呢


本文转自温景良博客园博客,原文链接:http://www.cnblogs.com/wenjl520/archive/2008/11/03/1325544.html,如需转载请自行联系原作者

相关文章
|
机器学习/深度学习 存储 算法
基于Flask+Bootstrap+机器学习的世界杯比赛预测系统
基于Flask+Bootstrap+机器学习的世界杯比赛预测系统
237 0
|
小程序 iOS开发
微信小程序下载文件和转发文件给好友总结
微信小程序下载文件和转发文件给好友总结
1664 0
微信小程序下载文件和转发文件给好友总结
|
JavaScript 前端开发
实现自动扫描工作区npm包并同步cnpm
前言 在开发一个多npm包的项目时,时常会一次更新多个包的代码,再批量发布到 npm 镜像源后。 由于国内网络环境的原因,大部分都会使用淘宝的镜像源进行依赖安装,为了确保发布后,通过淘宝源能够顺利的安装,通常会手动同步一下 cnpm sync vue react 但在一些大型的 monorepo 的多包工程里,手动输入包名是一件非常繁琐的事情,所以准备把输入的过程简化一下,改成自动扫描工作区的包名,然后自动同步。 进而有了这个工具 工具的使用 直接通过 npx 运行即可,将自动扫描所有的包
|
10月前
|
机器学习/深度学习 人工智能
大模型合成数据机理分析,人大刘勇团队:信息增益影响泛化能力
中国人民大学刘勇团队研究了合成数据对大型语言模型泛化能力的影响,提出逆瓶颈视角,通过“通过互信息的泛化增益”(GGMI)概念,揭示了后训练模型的泛化能力主要取决于从生成模型中获得的信息增益。这一发现为优化合成数据生成和后训练过程提供了重要理论依据。
261 1
|
11月前
|
Web App开发 JavaScript 前端开发
鸿蒙Flutter实战:04-如何使用DevTools调试Webview
本文介绍如何在鸿蒙 Flutter 开发中调试 Webview,包括配置允许调试、找到 devtools 端口、开启端口转发、在 Chrome 中调试 Webview等。
342 0
鸿蒙Flutter实战:04-如何使用DevTools调试Webview
|
数据可视化 数据挖掘 Python
Matplotlib图表类型详解:折线图、柱状图与散点图
【4月更文挑战第17天】本文介绍了Python数据可视化库Matplotlib的三种主要图表类型:折线图、柱状图和散点图。折线图用于显示数据随时间或连续变量的变化趋势,适合多条曲线对比;柱状图适用于展示分类数据的数值大小和比较;散点图则用于揭示两个变量之间的关系和模式。通过示例代码展示了如何使用Matplotlib创建这些图表。
|
JavaScript
Playwright系列(4):Trace Viewer
Playwright系列(4):Trace Viewer
258 0
Playwright系列(4):Trace Viewer
|
前端开发
【专栏:CSS进阶篇】CSS变量与预处理器(Sass/Less)
【4月更文挑战第30天】本文探讨了CSS变量和预处理器Sass的使用,以提升开发效率和代码可维护性。CSS变量通过--*语法定义,可在文档范围内重用,减少冗余,提高可维护性。Sass预处理器引入了变量、嵌套规则、混合和函数等特性,使CSS编写更简洁、可维护。Sass变量使用$符号定义,支持嵌套规则和混合,如定义border-radius混合以减少重复代码。Sass的高级功能使其成为强大工具。
277 0
|
JavaScript 前端开发 API
vue2 /vue3【nextTick】的使用方法及实现原理,一文全搞懂!
vue2 /vue3【nextTick】的使用方法及实现原理,一文全搞懂!
|
存储 人工智能 自然语言处理
云原生向量数据库Milvus(一)-简述、系统架构及应用场景(上)
Milvus 是一款云原生向量数据库,它具备高可用、高性能、易拓展的特点,用于海量向量数据的实时召回。