求把js.min的文件还原成带换行带缩进的C#代码

格式化工具很多,如果只单纯想格式化一下,可以用工具

不过看楼主的意思是想自己通过C#实现格式化功能,我想了个笨办法,效率可能不是太高,仅供参考,大概思路是:

1、先将{、}、;替换为{

、}

、;

,以实现换行

2、再根据{、}的位置插入相应空格实现缩进

写了个Demo,以4个字符长度为缩进距离,楼主可以试试,换行缩进基本满足,有些细节可能还需调整

//// 不的小数写法:没有小数部分let pr = 10.;// 不的小数写法:没有整数部分let pr = .1;// 不的写法:八进制写法已经被弃用了let num = 010;/

/// 格式化js代码

/// js能压缩百分之一,可放大至原来的5倍2.????最小可缩放至原来的百分之10第二种保持宽度长度不变改变质量,但不能用于放大最小可压缩至原图的百分之一

///

原js代码

/// 格式化后的js代码

private string formatJaScript(string js)

{string jsStr = js.Replace("{", "{

").Replace("}", "}

").Replace(";", ";

");

for (int使用方法: i = 0; i < jsStr.Length; i++)

{if (jsStr[i] == '

' && jsStr[i - 1] == '{')

{indentIndex++;

jsStr = jsStr.Insert(i + 1, getSpace(indentIndex));

i = i + 4 indentIndex + 1;

' && jsStr[i - 1] == '}')

{indentIndex--;

jsStr = jsStr.Remove(i - 5, 4);

i = i - 4;

}if (jsStr[i] == '

')

i = i + 4 indentIndex + 1;

}}

return jsStr;

}///

///

///

JS代码大括号层级

/// 空格字符串

private string getSpace(int index)

{string str = string.Empty;

for (int i = 0; i < index; i++)

{str += " ";

}return str;

}//调用

string jsMin = "function test(){var text=1;var text=2;if(true){var text=3;var text=4;if(true){var text=5;var text=6;}}else{var text=7;}}";

string jsNew = formatJaScript(jsMin);

uglify-js 和 angular冲突吗

2、根据文件数量,增删输入窗口的数量。

根据解释,UglifyJS不仅 是一款JaScript的压缩工具,还具有很多特性。

@param Object person

UglifyJS is a JaScript compressor/minifier written in JaScript. It also contains tools that allow one to automate working with JaScript code.

processData:false,

js上传压缩-如何利用JS或者CSS样式来自动调整大小

js版和css版自动按比例调整大小方法,分别如下:

如何在前端用js进行多上传

但是这个界面只能一张张手工作,对于几十个G来说就是个噩梦。网上搜了下squoosh批量压缩,竟然没有找到一篇合适、准确的介绍,没办法只能自己慢慢摸索。

产品提了一个需求,要求在一个html中实现多行多上传,原型图如下:

anotherSomingElse;这段代码里,变量 anotherSomingElse 和行首的 soming 保持左对齐,确保代码的可读性,并能一眼看清楚折行文本的上下文。

2.1:html

html页面由前端实现,此处增加

是为了配合单击放大功能的实现

  • 2.2:js

    varimgFile_other=[];

    functionadd_file_image(id){

    varfileList=("file_"+id).files;//js获取文件对象

    if(verificationFile(fileList[0])){

    for(vari=0;i

    varimgSrcI=getObjectURL(fileList[i]);

    if(id=="other"){

    imgSrc_(imgSrcI);

    fileResizetoFile(fileList[i],0.6,function(res){

    imgFile_(res);

    })

    }else{

    imgFile_(res);

    }}

    addNewContent(id);

    }}

    //新增

    //删除原先

    $("#ul_"+obj).html("");

    //判断循环新增

    var_ext="";

    if(obj=="other"){

    for(vara=0;a

    text+='

  • ';

    }}else{

    ('数据');

    }varoldBox="

  • +

    "+

    "

    "+

    "