`
昔日舞曲
  • 浏览: 58124 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

DIY自己的JavaScript代码格式化工具

阅读更多

听起来很拗口的样子

但是把以下代码保存为html格式,然后在打开之,把要格式化的代码赋复制到上面的栏中,点击GO即可

<HTML><HEAD><TITLE>Format</TITLE>
<METAcontent="MSHTML6.00.2800.1528"name=GENERATOR>
<METAcontent=""name=Author>
<METAcontent=""name=Keywords>
<METAcontent=""name=Description></HEAD>
<BODY>
<SCRIPTlanguage=JavaScript>...
<!--
/**//**//**//**//**//**//**//**
**==================================================================================================
**类名:CLASS_FORMATER
**功能:JS格式化
**示例:
---------------------------------------------------------------------------------------------------

varxx=newCLASS_FORMATER(code);

document.getElementById("display").innerHTML=xx.format();

---------------------------------------------------------------------------------------------------
**作者:ttyp
**邮件:ttyp@21cn.com
**日期:2006-5-21
**版本:0.1
**==================================================================================================
*
*/


functionCLASS_FORMAT(code)...{
//哈希表类
functionHashtable()...{
this._hash=newObject();
this.add=function(key,value)...{
if(typeof(key)!="undefined")...{
if(this.contains(key)==false)...{
this._hash[key]=typeof(value)=="undefined"?null:value;
returntrue;
}
else...{
returnfalse;
}

}
else...{
returnfalse;
}

}

this.remove=function(key)...{deletethis._hash[key];}
this.count=function()...{vari=0;for(varkinthis._hash)...{i++;}returni;}
this.items=function(key)...{returnthis._hash[key];}
this.contains=function(key)...{returntypeof(this._hash[key])!="undefined";}
this.clear=function()...{for(varkinthis._hash)...{deletethis._hash[k];}}

}


this._caseSensitive=true;

//字符串转换为哈希表
this.str2hashtable=function(key,cs)...{

var_key=key.split(/,/g);
var_hash=newHashtable();
var_cs=true;


if(typeof(cs)=="undefined"||cs==null)...{
_cs
=this._caseSensitive;
}
else...{
_cs
=cs;
}


for(variin_key)...{
if(_cs)...{
_hash.add(_key[i]);
}
else...{
_hash.add((_key[i]
+"").toLowerCase());
}


}

return_hash;
}


//获得需要转换的代码
this._codetxt=code;

if(typeof(syntax)=="undefined")...{
syntax
="";
}


this._deleteComment=false;
//是否大小写敏感
this._caseSensitive=true;
//可以后面加块语句的关键字
this._blockElement=this.str2hashtable("switch,if,while,try,finally");
//是函数申明
this._function=this.str2hashtable("function");
//本行括号内分号不做换行
this._isFor="for";

this._choiceElement=this.str2hashtable("else,catch");

this._beginBlock="{";
this._endBlock="}";

this._singleEyeElement=this.str2hashtable("var,new,return,else,delete,in,case");
//得到分割字符
this._wordDelimiters=" ,.?!;:\/<>(){}[]"' =+-|*%@#$^&";
//引用字符
this._quotation=this.str2hashtable("",'");
//行注释字符
this._lineComment="//";
//转义字符
this._escape="\";
//多行引用开始
this._commentOn="/*";
//多行引用结束
this._commentOff="*/";
//行结束词
this._rowEnd=";";

this._in="in";


this.isCompress=false;
this.style=0;

this._tabNum=0;


this.format=function()...{
varcodeArr=newArray();
varword_index=0;
varhtmlTxt=newArray();

if(this.isCompress)...{
this._deleteComment=true;
http://images.csdn.net/syntaxhighlighting/OutliningIndica
分享到:
评论

相关推荐

    网站流量可视化数据大屏代码.zip

    【网站流量可视化数据大屏代码.zip】这个压缩包文件是一个基于Flask框架和Python语言的项目,用于实现网站流量数据的实时监控与可视化展示。Flask是一个轻量级的Web服务器网关接口(WSGI)微框架,适用于构建简单但...

    在线diy配置生成系统源码

    在线DIY配置生成系统源码是一个专为用户提供个性化定制服务的软件开发平台,它允许用户根据自己的需求选择和配置各种功能模块,以构建适合自身业务的解决方案。这种系统通常适用于各种领域,如网站构建、软件开发、...

    自制html(前端)编译器

    5. **用户交互优化**:考虑到用户体验,你还可以添加搜索功能、代码格式化、代码保存和导入导出功能等。 6. **框架集成**:如果你想让编译器支持现代前端框架如React或Vue,你需要理解框架的渲染机制,并在预览环境...

    首页N格代码

    4. **N格DIY大黄米版.xml**:这个文件可能是XML格式的数据,用于存储N格的布局信息,比如每个格子的大小、位置、内容等。用户可能需要使用XML解析器或者相关工具来编辑和导入这个文件,以定制自己的N格布局。 5. **...

    DiY-Page 网游深绿模板

    总的来说,"DiY-Page 网游深绿模板"是一个强大的工具,可以帮助游戏行业相关人员快速创建专业且美观的网站,降低开发成本,提高工作效率。通过合理使用和定制,可以打造出个性化的游戏门户,吸引并留住玩家。

    Python爬虫+办公自动化+好玩DIY-视频课程资源网盘链接提取码下载 .txt

    - **动手实践**:每学习一个知识点后,尝试自己编写代码,巩固记忆。 - **项目驱动**:选取感兴趣的项目作为练习目标,提升解决问题的能力。 - **持续跟进**:关注技术动态,及时学习新出现的工具和技术。 通过本...

    麦芒装饰装修DIY小程序V3.2.59全开源安装包 PC端 小程序前端.zip

    "源码"标签表示这个资源包含了软件的原始代码,用户可以深入理解程序的工作原理,甚至进行二次开发,定制化自己的装饰装修应用。 【文件名称列表解析】 - "新建文本文档.txt":可能是一个说明文档或者日志文件,...

    DiY-Page CG人科幻模板

    这可能涉及到JPEG、PNG或SVG等不同格式的选择,以及压缩工具的使用。 7. **SEO友好**:一个优秀的网页模板会考虑到搜索引擎优化,包括合理的元标签、关键词布局和语义化HTML结构,有助于提高网站在搜索引擎结果中的...

    vue框架整合百度local-kitymind脑图

    `.prettierrc` 是 Prettier 配置,用于代码格式化,保持代码的整洁和一致性。 整合 Vue.js 和百度 Local-KityMind 脑图涉及到的技术点包括 Vue 组件化思想、事件处理、状态管理和异步通信。Vue 的组件系统可以将...

    自制时间轴

    在IT行业中,时间轴(Timeline)是一种非常实用的数据可视化工具,它可以帮助用户直观地了解事件按照时间顺序的发生过程。在你的“自制时间轴”项目中,我们关注的是如何设计和实现一个能够按照年份分割,进一步按...

    DIY在线制作表情包图片GIF动图微信小程序源码.zip

    这是一个用于创建个性化表情包的微信小程序的源代码,用户可以自行设计并制作GIF动图。微信小程序是一种轻量级的应用程序,无需下载安装即可在微信平台上使用,大大方便了用户。GIF动图则是网络上常见的动态图像格式...

    基于PHP+bootstrap开发的手机壳定制商城系统源码

    1. `artisan`:这是Laravel框架的命令行工具,用于执行各种自动化任务,如数据库迁移、缓存清除等。 2. `.env`:这是一个环境变量配置文件,包含了数据库连接信息、密钥和其他敏感数据,需要根据实际部署环境进行...

    企业自助建站系统ASP版(源码)

    在本系统中,用户可以通过UBB代码编辑公司简介、联系方式和汇款方式等页面,方便地插入文本、图片、链接等元素,同时保持格式的一致性。 4. **产品展示DIY**: 企业可以创建、分类和展示产品信息,包括产品图片、...

    艺术.zip小程序精选源码

    "zip"是压缩文件格式,意味着源代码被整理成一个可下载的压缩包,方便用户获取和管理。"精选"暗示这些源码可能是经过挑选、具有高质量或独特设计的,适合对艺术类小程序开发感兴趣的开发者参考或学习。 【描述分析...

    基于ESP32最小系统板制作的网页示波器+波形发生器代码.zip

    6. **实时绘图库**:在Web端,可能会使用如Chart.js、D3.js等JavaScript库来实现动态数据可视化,将接收到的波形数据实时绘制在网页上。 7. **事件驱动编程**:在ESP32端,程序可能采用事件驱动模型来处理ADC采样、...

    aaja-diy-mapping

    【描述】"DIY:交互式映射"指出这是一个关于自己动手创建交互式地图的教程或资源集合。"交互式映射"是指用户可以通过点击、拖动、缩放等操作来探索和交互的地图形式,它在现代网络媒体中广泛应用,能够提供更直观、...

    fe-tools:前端工具

    5. **代码质量工具**:如Prettier,进行代码格式化;ESLint插件如Airbnb风格指南,可以进一步提升代码一致性。 6. **包管理**:Yarn或npm,用于管理项目依赖,确保环境一致性。 7. **开发服务器**:如webpack-dev-...

    traindown-js:Traindown标记语言的Javascript(节点和浏览器)库

    然后在你的JavaScript代码中导入并使用它: ```javascript const traindown = require('traindown-js'); ``` 对于浏览器环境,可以使用像Webpack这样的模块打包工具将traindown-js包含在你的项目中,或者直接从CDN...

    reddit-search-app:一款允许您使用关键字搜索reddit的应用程序。 使用JavaScript,Bootstrap 4和Parcel捆绑器进行构建

    在这款应用中,Parcel可能负责将源代码转换为浏览器可执行的格式,同时合并和压缩JavaScript、CSS和其他资源,以提高加载速度和减少网络带宽使用。 **文件结构分析(假设)** 由于我们只有"reddit-search-app-...

    reportNg 源码

    **报告Ng源码详解** `ReportNg`是一个用于生成详细测试报告的开源工具,尤其在自动化测试领域中广泛应用。...通过学习和研究,开发者不仅可以定制自己的测试报告,还能从中汲取灵感,提升自己的测试自动化技术。

Global site tag (gtag.js) - Google Analytics