+2

Tổng hợp về console.log

1. Nguồn

console.logまとめ 2016年夏

2. Động cơ

Một buổi chiều thật ngứa ngáy chân tay và buồn ngủ, quyết định lên qiita tìm bài viết nào hay hay để chia sẻ cho mọi người.

3. Sơ lược bài viết

Bài viết tổng hợp những kiến thức có liên quan tới console.log, chỉ cần bạn sử dụng 1 modern browser là có thể kiểm tra được hoạt động của tất cả các function này. Người viết sử dụng Chrome để kiểm tra kết quả output.

4. Rất nhiều function với dạng console.hogehoge

4.1. console.log

Cơ bản

79345921-149b-ab37-38f5-1b58242f6572.png

Có thể customize kết quả output bằng việc đưa đối số vào

68aec1da-a7be-cb60-7d73-666aa5ebcbe3.png

4.2. console.info、console.warn、console.error

Mỗi loại sẽ cho kiểu output khác nhau.

5c7d8058-a7f3-479e-c3cb-0354051bb79d.png

2b48e8d8-55cc-b062-d3db-d326d70d21e7.png

174f08e9-6611-54d6-b29b-e91e565e73f3.png

4.3. console.assert

Đánh giá biểu thức, nếu giá trị là false sẽ cho xuất log.

aa18762d-686d-7e16-d894-00f53eb6bc43.png

4.4. console.count

Khi kết quả output của log mà giống nhau thì số count sẽ tự động được tăng lên

211358d2-8ff3-c1a2-7cca-03f1dda534c8.png

4.5. console.dir

Xuất log nội dung property của object.

4e84a562-afe8-217c-1c05-f9ffef3dbd1f.png

4.6. console.dirxml

Nếu truyền vào HTML hay XML element, có thể nhìn toàn bộ các element phía dưới.

681b826f-ce8a-1d69-cc4b-aa27d0595f3a.png

4.7. console.group、conosle.groupCollapsed

Group lại console.log giúp dễ nhìn hơn.

Bắt đầu bằng console.group và kết thúc bằng console.groupEnd.

Nếu cho bắt đầu bằng console.groupCollapsed thì theo default sẽ xuất log có group dưới dạng được đóng.

2000bd4b-622d-1baa-fbe4-461b8a6fec1e.png

4.8. console.profile、console.profileEnd

Có thể xem CPU profile của javascript của code được bọc trong đoạn từ console.profile đến console.profileEnd.

Nếu cài đặt test như dưới đây:

2af5b786-da03-e2cc-e255-a0b2c372daed.png

Tại panel Profile sẽ có test.

7e4d15ca-6e55-5727-9a6a-d68f85217066 (1).png

4.9. console.time、console.timeEnd

Đo thời gian từ console.time cho tới console.timeEnd.

b242ed18-c79e-e5fb-81ea-eb7a4923ad08.png

4.10. console.timeStamp

Debug của chrome > có thể thêm vào Timeline.

  function hoge() {
    ret = 0;
    for(var i=0; i<100000; i++) {
      ret = i;
    }
    console.log(ret);
  }
  console.timeStamp("hogeStamp")

8109b770-e3ee-0acd-ebfe-90f10c350893.png

4.11. console.trace

Có thể nhìn được stacktrace của method khi chạy. Cái này sẽ rất có hữu dụng khi bạn muốn biết nó chạy qua các method nào.

0c7d6584-fc4f-95ad-2ab9-36e8b8ef1d2d.png

4.12. console.table

Có thể hiển thị table.

b688905b-d3d7-9fc3-c5db-7a7473f27c6b.png

4.13. Thay thế ký tự và cài đặt format

Có thể thay thế ký tự đã định. Mặc dù tôi không hay sử dụng lắm..

Ký tự thay thế Ý nghĩa
%s thay thế dạng string
%i,%d thay thế dạng int
%f thay thế dạng float
%o thay thế DOM element
%O thay thế JavascriptObject
%c thay thế style

%s

4e03e013-0b65-991f-fce7-10f5d73e9768.png

%i,%d

3f96113e-7d82-c25f-157a-3ce5408c7595.png

%f

2b4a0858-7fc4-e389-630f-0b6d8cac2e21.png

%o

40e705ce-fa97-8df1-a497-022b3a427661.png

%O

807c0074-400d-e2d5-c8b9-188743fc739b.png

%c

Áp dụng style đã cài đặt vào chuỗi ký tự sau %c.

bd110421-6044-718b-0c9d-04c1396b3d50.png

・facebook

f36e08ba-5843-b72e-0533-9a243b5c145a.png

・cookpad

4e3af733-e7b2-5c70-72ce-0a0f9a5ff32c.png

5. Không muốn xuất kết quả trên production

Chắc hẳn các bạn cũng từng có lúc nghĩ rằng không muốn xuất kết quả console.log trên production.

Tôi có biết một bài viết sẽ giúp ích cho các bạn.

Ở đây chỉ giới hạn cho console.log thôi, nên đối với các function khác cần tạo wrapper để thực hiện.

console.log()を使うときのおすすめ記述方法

(nếu bài viết này được đón nhận mình sẽ dịch cả bài trên 😄)


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí