九個Console命令,讓js調試更簡單

jopen 9年前發布 | 13K 次閱讀 js調試 JavaScript開發

一、顯示信息的命令

 console.log('詳情');
 console.error('錯誤');
 console.warn('警告');


二:占位符console上述的集中度支持printf的占位符格式,支持的占位符有:字符(%s)、整數(%d或%i)、浮點數(%f)和對象(%o)

 console.log("%d年%d月%d日",2015,6,28);


三、信息分組

console.group("我的信息");
console.log("用戶名:tpythoner");
console.log("我的博客:OSCHINA( 
console.groupEnd();


四、查看對象的信息

  console.dir()可以顯示一個對象所有的屬性和方法。

 var info = {'username' : 'tpythoner', 'email' : 'admin@gmail.com'};
 console.dir(info);


五、顯示某個節點的內容

console.dirxml()用來顯示網頁的某個節點(node)所包含的html/xml代碼。

<div id="info">
    <p>程序愛好者:tpyhoner</p>
</div>
<script type="text/javascript">
    var info = document.getElementById('info');
    console.dirxml(info);
</script>


六、判斷變量是否是真

console.assert()用來判斷一個表達式或變量是否為真。如果結果為否,則在控制臺輸出一條相應信息,并且拋出一個異常。

var result = 1;
console.assert(result);
var year = 2015;
console.assert(year == 2016);


1是非0值,是真;而第二個判斷是假,在控制臺顯示錯誤信息 

七、追蹤函數的調用軌跡。

console.trace()用來追蹤函數的調用軌跡。

<script type="text/javascript">
/*函數是如何被調用的,在其中加入console.trace()方法就可以了*/
  function add(a,b){
        console.trace();
    return a+b;
  }
  var x = add3(1,1);
  function add3(a,b){return add2(a,b);}
  function add2(a,b){return add1(a,b);}
  function add1(a,b){return add(a,b);}
</script>


八、計時功能

console.time()和console.timeEnd(),用來顯示代碼的運行時間。

<script type="text/javascript">
  console.time("控制臺計時器一");
  for(var i=0;i<1000;i++){
    for(var j=0;j<1000;j++){}
  }
  console.timeEnd("控制臺計時器一");
</script>


九、console.profile()的性能分析

function doTask(){
  doSubTaskA(1000);
  doSubTaskA(100000);
  doSubTaskB(10000);
  doSubTaskC(1000,10000);
}
function doSubTaskA(count){
  for(var i=0;i<count;i++){}
}
 
function doSubTaskB(count){
  for(var i=0;i<count;i++){}
}
 
function doSubTaskC(countX,countY){
  for(var i=0;i<countX;i++){
    for(var j=0;j<countY;j++){} 
  }
}
console.profile();
doTask();
console.profileEnd();


性能分析(Profiler)就是分析程序各個部分的運行時間,找出瓶頸所在,使用的方法是console.profile()。

原文地址:http://bbs.html5cn.org/thread-84358-1-1.html

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!