格式化js
Ⅰ js格式化
|
functionchangeToPercent(num){
if(!/d+.?d+/.test(num)){
alert("必須為數字");
}
varresult=(num*100).toString(),
index=result.indexOf(".");
if(index==-1||result.substr(index+1).length<=4){
returnresult+"%";
}
returnresult.substr(0,index+5)+"%";
}
Ⅱ 怎麼樣格式化javascript,怎麼樣格式化js
格式化的話感覺可以使用firefox來實現,在firefox的開發者工具中有一個選項,叫美化原代碼, 這樣就直接格式化了js代碼
Ⅲ 在myeclipse中怎麼格式化js代碼
通過快捷鍵Ctrl+Shift+F進行格式化
Ctrl+Shift+F 格式化代碼後總把一行拆成兩行或者更多有點不適應,所以按個人愛好更改他,這里介紹的是MyEclipse8.5的更改方式其他應該差不多Window→Preferences→Java→Code Style→ Formatter右側可以直接Edit也可以New,建議自己New。
Line Wrapping選項卡的 左上Maximum line width的值是80,改成自己適合的值。
辛苦寫完的代碼,被Eclipse一格式化以後,本來想放在一行上的東西卻被自動轉成了多行,雖然自動換行以後可以在編輯器中一眼就能看到全部的代碼,但是可讀性卻大打折扣,比如方法名及參數我喜歡放在一行上,自動格式化時給我拆成三、四行看著太亂了,避免出現這種情況的辦法是:
1.Java代碼
打開Eclipse的Window菜單,然後Preferences->Java->Code Style->Formatter->Edit/Show(根據不同版本可用的按鈕會不一樣) ->Line Wrapping->Maximum line width:由80改成800就行了。
2.Html代碼
Window->Preferences->MyEclipse->Files and Editors->Html->Html Source->Line width->加個0以後保存。
Ⅳ 求一段格式化HTML代碼的JS代碼。
varHTMLFormat=(function(){
functionstyle_html(html_source,indent_size,indent_character,max_char){
,multi_parser;
functionParser(){
this.pos=0;
this.token='';
this.current_mode='CONTENT';
this.tags={
parent:'parent1',
parentcount:1,
parent1:''
};
this.tag_type='';
this.token_text=this.last_token=this.last_text=this.token_type='';
this.Utils={
whitespace:" ".split(''),
single_token:'br,input,link,meta,!doctype,basefont,base,area,hr,wbr,param,img,isindex,?xml,embed'.split(','),
extra_liners:'head,body,/html'.split(','),
in_array:function(what,arr){
for(vari=0;i<arr.length;i++){
if(what===arr[i]){
returntrue;
}
}
returnfalse;
}
}
this.get_content=function(){
varchar='';
varcontent=[];
varspace=false;
while(this.input.charAt(this.pos)!=='<'){
if(this.pos>=this.input.length){
returncontent.length?content.join(''):['','TK_EOF'];
}
char=this.input.charAt(this.pos);
this.pos++;
this.line_char_count++;
if(this.Utils.in_array(char,this.Utils.whitespace)){
if(content.length){
space=true;
}
this.line_char_count--;
continue;
}elseif(space){
if(this.line_char_count>=this.max_char){
content.push(' ');
for(vari=0;i<this.indent_level;i++){
content.push(this.indent_string);
}
this.line_char_count=0;
}else{
content.push('');
this.line_char_count++;
}
space=false;
}
content.push(char);
}
returncontent.length?content.join(''):'';
}
this.get_script=function(){
varchar='';
varcontent=[];
varreg_match=newRegExp('</script'+'>','igm');
reg_match.lastIndex=this.pos;
varreg_array=reg_match.exec(this.input);
varend_script=reg_array?reg_array.index:this.input.length;
while(this.pos<end_script){
if(this.pos>=this.input.length){
returncontent.length?content.join(''):['','TK_EOF'];
}
char=this.input.charAt(this.pos);
this.pos++;
content.push(char);
}
returncontent.length?content.join(''):'';
}
this.record_tag=function(tag){
if(this.tags[tag+'count']){
this.tags[tag+'count']++;
this.tags[tag+this.tags[tag+'count']]=this.indent_level;
}else{
this.tags[tag+'count']=1;
this.tags[tag+this.tags[tag+'count']]=this.indent_level;
}
this.tags[tag+this.tags[tag+'count']+'parent']=this.tags.parent;
this.tags.parent=tag+this.tags[tag+'count'];
}
this.retrieve_tag=function(tag){
if(this.tags[tag+'count']){
vartemp_parent=this.tags.parent;
while(temp_parent){
if(tag+this.tags[tag+'count']===temp_parent){
break;
}
temp_parent=this.tags[temp_parent+'parent'];
}
if(temp_parent){
this.indent_level=this.tags[tag+this.tags[tag+'count']];
this.tags.parent=this.tags[temp_parent+'parent'];
}
deletethis.tags[tag+this.tags[tag+'count']+'parent'];
deletethis.tags[tag+this.tags[tag+'count']];
if(this.tags[tag+'count']==1){
deletethis.tags[tag+'count'];
}else{
this.tags[tag+'count']--;
}
}
}
this.get_tag=function(){
varchar='';
varcontent=[];
varspace=false;
do{
if(this.pos>=this.input.length){
returncontent.length?content.join(''):['','TK_EOF'];
}
char=this.input.charAt(this.pos);
this.pos++;
this.line_char_count++;
if(this.Utils.in_array(char,this.Utils.whitespace)){
space=true;
this.line_char_count--;
continue;
}
if(char==="'"||char==='"'){
if(!content[1]||content[1]!=='!'){
char+=this.get_unformatted(char);
space=true;
}
}
if(char==='='){
space=false;
}
if(content.length&&content[content.length-1]!=='='&&char!=='>'&&space){
if(this.line_char_count>=this.max_char){
this.print_newline(false,content);
this.line_char_count=0;
}else{
content.push('');
this.line_char_count++;
}
space=false;
}
content.push(char);
}while(char!=='>');
vartag_complete=content.join('');
vartag_index;
if(tag_complete.indexOf('')!=-1){
tag_index=tag_complete.indexOf('');
}else{
tag_index=tag_complete.indexOf('>');
}
vartag_check=tag_complete.substring(1,tag_index).toLowerCase();
if(tag_complete.charAt(tag_complete.length-2)==='/'||this.Utils.in_array(tag_check,this.Utils.single_token)){
this.tag_type='SINGLE';
}elseif(tag_check==='script'){
this.record_tag(tag_check);
this.tag_type='SCRIPT';
}elseif(tag_check==='style'){
this.record_tag(tag_check);
this.tag_type='STYLE';
}elseif(tag_check.charAt(0)==='!'){
if(tag_check.indexOf('[if')!=-1){
if(tag_complete.indexOf('!IE')!=-1){
varcomment=this.get_unformatted('-->',tag_complete);
content.push(comment);
}
this.tag_type='START';
}elseif(tag_check.indexOf('[endif')!=-1){
this.tag_type='END';
this.unindent();
}elseif(tag_check.indexOf('[cdata[')!=-1){
varcomment=this.get_unformatted(']]>',tag_complete);
content.push(comment);
this.tag_type='SINGLE';
}else{
varcomment=this.get_unformatted('-->',tag_complete);
content.push(comment);
this.tag_type='SINGLE';
}
}else{
if(tag_check.charAt(0)==='/'){
this.retrieve_tag(tag_check.substring(1));
this.tag_type='END';
}else{
this.record_tag(tag_check);
this.tag_type='START';
}
if(this.Utils.in_array(tag_check,this.Utils.extra_liners)){
this.print_newline(true,this.output);
}
}
returncontent.join('');
}
this.get_unformatted=function(delimiter,orig_tag){
if(orig_tag&&orig_tag.indexOf(delimiter)!=-1){
return'';
}
varchar='';
varcontent='';
varspace=true;
do{
char=this.input.charAt(this.pos);
this.pos++
if(this.Utils.in_array(char,this.Utils.whitespace)){
if(!space){
this.line_char_count--;
continue;
}
if(char===' '||char===' '){
content+=' ';
for(vari=0;i<this.indent_level;i++){
content+=this.indent_string;
}
space=false;
this.line_char_count=0;
continue;
}
}
content+=char;
this.line_char_count++;
space=true;
}while(content.indexOf(delimiter)==-1);
returncontent;
}
this.get_token=function(){
vartoken;
if(this.last_token==='TK_TAG_SCRIPT'){
vartemp_token=this.get_script();
if(typeoftemp_token!=='string'){
returntemp_token;
}
//token=js_beautify(temp_token,this.indent_size,this.indent_character,this.indent_level);
//return[token,'TK_CONTENT'];
return[temp_token,'TK_CONTENT'];
}
if(this.current_mode==='CONTENT'){
token=this.get_content();
if(typeoftoken!=='string'){
returntoken;
}else{
return[token,'TK_CONTENT'];
}
}
if(this.current_mode==='TAG'){
token=this.get_tag();
if(typeoftoken!=='string'){
returntoken;
}else{
vartag_name_type='TK_TAG_'+this.tag_type;
return[token,tag_name_type];
}
}
}
this.printer=function(js_source,indent_character,indent_size,max_char){
this.input=js_source||'';
this.output=[];
this.indent_character=indent_character||'';
this.indent_string='';
this.indent_size=indent_size||2;
this.indent_level=0;
this.max_char=max_char||70;
this.line_char_count=0;
for(vari=0;i<this.indent_size;i++){
this.indent_string+=this.indent_character;
}
this.print_newline=function(ignore,arr){
this.line_char_count=0;
if(!arr||!arr.length){
return;
}
if(!ignore){
while(this.Utils.in_array(arr[arr.length-1],this.Utils.whitespace)){
arr.pop();
}
}
arr.push(' ');
for(vari=0;i<this.indent_level;i++){
arr.push(this.indent_string);
}
}
this.print_token=function(text){
this.output.push(text);
}
this.indent=function(){
this.indent_level++;
}
this.unindent=function(){
if(this.indent_level>0){
this.indent_level--;
}
}
}
returnthis;
}
multi_parser=newParser();
multi_parser.printer(html_source,indent_character,indent_size);
while(true){
vart=multi_parser.get_token();
multi_parser.token_text=t[0];
multi_parser.token_type=t[1];
if(multi_parser.token_type==='TK_EOF'){
break;
}
switch(multi_parser.token_type){
case'TK_TAG_START':
case'TK_TAG_SCRIPT':
case'TK_TAG_STYLE':
multi_parser.print_newline(false,multi_parser.output);
multi_parser.print_token(multi_parser.token_text);
multi_parser.indent();
multi_parser.current_mode='CONTENT';
break;
case'TK_TAG_END':
multi_parser.print_newline(true,multi_parser.output);
multi_parser.print_token(multi_parser.token_text);
multi_parser.current_mode='CONTENT';
break;
case'TK_TAG_SINGLE':
multi_parser.print_newline(false,multi_parser.output);
multi_parser.print_token(multi_parser.token_text);
multi_parser.current_mode='CONTENT';
break;
case'TK_CONTENT':
if(multi_parser.token_text!==''){
multi_parser.print_newline(false,multi_parser.output);
multi_parser.print_token(multi_parser.token_text);
}
multi_parser.current_mode='TAG';
break;
}
multi_parser.last_token=multi_parser.token_type;
multi_parser.last_text=multi_parser.token_text;
}
returnmulti_parser.output.join('');
}
returnfunction(data){
vardataHolder=['__dataHolder_',[Math.random(),Math.random(),Math.random(),Math.random()].join('_').replace(/[^0-9]/g,'_'),'_'].join('_');
vardataHolders={};
varindex=0;
data=data.replace(/(")(data:[^"]*)(")/g,function($0,$1,$2,$3){
varname=dataHolder+index++;
dataHolders[name]=$2;
return$1+name+$3;
})
data=style_html(data,1,' ',0x10000000);
data=data.replace(newRegExp(dataHolder+'[0-9]+','g'),function($0){
returndataHolders[$0];
});
returndata;
}
})();
//demo:
varformattedHtml=HTMLFormat('<div><span><br>xxx</span></div>');
Ⅳ js中要怎麼格式化一個時間
剛項目中需要使用js格式化輸出時間,發現js中並沒有現成的類似PHP中date()的函數。於是用js模擬一個方便以後使用,代碼如下:
格式化時間
參數: formatStr 格式化串 y年,m月,d日,h小時,i分鍾,s秒鍾 預設值 "y-m-d h:i:s"
fdate 要格式化的時間(時間戳)UTC秒數 預設值 當前時間
實例: formatDate() 當前時間默認格式 如 2011-4-12 12:51:12
formatDate('y/m/d', 2132132131) 某時間格式為 年月日 如 2010/12/5
function formatDate(formatStr, fdate)
{
var fTime, fStr = 'ymdhis';
if (!formatStr)
formatStr= "y-m-d h:i:s";
if (fdate)
fTime = new Date(fdate);
else
fTime = new Date();
var formatArr = [
fTime.getFullYear().toString(),
(fTime.getMonth()+1).toString(),
fTime.getDate().toString(),
fTime.getHours().toString(),
fTime.getMinutes().toString(),
fTime.getSeconds().toString()
]
for (var i=0; i<formatArr.length; i++)
{
formatStr = formatStr.replace(fStr.charAt(i), formatArr[i]);
}
return formatStr;
}
Ⅵ 格式化js代碼
document.getElementById("1")
或者
var tr = document.getElementsByTagName("tr");
alert(tr[0].id);
Ⅶ js格式化輸出
String.format = function() {
if( arguments.length == 0 )
return null;
var str = arguments[0];
for(var i=1;i<arguments.length;i++) {
var re = new RegExp('\\{' + (i-1) + '\\}','gm');
str = str.replace(re, arguments[i]);
}
return str;
}
這是js裡面的format函數,使用和C#裡面一樣的
var a = String.format('{0}{1}', 0, 1)
你自己可以去試試看,100%成功
Ⅷ 怎樣在js裡面格式化日期
格式化時間
參數: formatStr 格式化串 y年,m月,d日,h小時,i分鍾,s秒鍾 預設值 "y-m-d h:i:s"
fdate 要格式化的時間(時間戳)UTC秒數 預設值 當前時間
實例: formatDate() 當前時間默認格式 如 2011-4-12 12:51:12
formatDate('y/m/d', 2132132131) 某時間格式為 年月日 如 2010/12/5
function formatDate(formatStr, fdate)
{
var fTime, fStr = 'ymdhis';
if (!formatStr)
formatStr= "y-m-d h:i:s";
if (fdate)
fTime = new Date(fdate);
else
fTime = new Date();
var formatArr = [
fTime.getFullYear().toString(),
(fTime.getMonth()+1).toString(),
fTime.getDate().toString(),
fTime.getHours().toString(),
fTime.getMinutes().toString(),
fTime.getSeconds().toString()
]
for (var i=0; i<formatArr.length; i++)
{
formatStr = formatStr.replace(fStr.charAt(i), formatArr[i]);
}
return formatStr;
}
Ⅸ 格式化硬碟js代碼
format <盤符> 全面格式化
format <盤符>/q 快速格式化