Javascript怎么輸出內容?兩種常見方式以及控制臺介紹

javascript是一種非常重要的編程語言,在許多網頁中它被廣泛使用,可以實現許多交互效果和動態效果。輸出是javascript中最基本的操作之一,下面將介紹兩種常見的輸出方式。

一、使用console.log()函數輸出

console.log()函數是常用的輸出函數之一,它可以在JavaScript的控制臺輸出信息,并且可以輸出任意類型的數據,例如:字符串、數字、數組、對象等等。下面是一個簡單的例子:

console.log("hello world")

在控制臺中會輸出Hello World!,這說明console.log()函數已經成功輸出了一條信息。

二、使用document.write()函數輸出

document.write()函數可以將輸出直接寫入HTML文檔中,這樣我們就可以在頁面中看到我們的輸出結果了。下面是一個簡單的例子:

document.write("hello world");

總結

以上,我們介紹了兩種常見的JavaScript的輸出方式:console.log()和document.write()。這兩種方式都是JavaScript編程中不可或缺的一部分,可以幫助我們更深入地理解JavaScript的基礎知識。在實際的開發中,我們可以靈活運用這些知識來實現各種交互效果和動態頁面效果。

三、什么是JavaScript中的控制臺呢?

3.1控制臺簡介

控制臺是現代瀏覽器中的內置調試器,熟練的web開發人員會經常使用console.log()在其代碼中打印消息和調試問題。控制臺(console)主要是用來顯示網頁加載過程中產生各類信息;在測試界面時,如果出現bug問題,一般情況下會在這欄展示,查看調試日志信息或者異常錯誤信息,然后前端開發工程師根據具體問題來調試,進行解決問題。

發者工具中的控制臺(Console)主要是用來顯示網頁加載過程中產生各類信息。

當網頁的JS代碼中使用了console.log()函數時,該函數輸出的日志信息會在控制臺中顯示。日志信息一般在開發調試時啟用,而當正式上線后,一般會將該函數去掉

在測試界面時,如果出現Bug問題,一般情況下會在這欄展示,查看調試日志信息或者異常錯誤信息,然后前端開發工程師根據具體問題來調試,進行解決問題。

可以從運行以下 Web 瀏覽器之一的任何遠程計算機系統輕松訪問 Web 控制臺:

  • 谷歌瀏覽器

  • 火狐瀏覽器

  • 蘋果瀏覽器

  • Microsoft Edge

打開一個瀏覽器,F12打開開發者模式,點擊console頁簽,并輸入命令(支持補全):

console 對象提供了大量的方法可供使用,而非我們最常用console.log() 一個函數。

3.2控制臺的使用

3.2.1顯示信息命令

其內置一個console對象,提供5種方法,用來顯示信息。最簡單的方法是 console.log(),可以用來取代 alert() 或 document.write() 。比如,在網頁腳本中使用 console.log("Hello World"),加載時控制臺就會自動顯示如下內容:

另外,根據信息的不同性質。console 對象還可以有4種顯示的方法,分別是一般信息console.info()、除錯信息console.debug()、警告提示console.warn()、錯誤提示console.error()。比如,在網頁腳本中插入下面四行:

console.info("This is Info"); 
console.debug("This is Debug"); 
console.warn("This is Warn"); 
console.error("This is Error");

加載時,控制臺會顯示如下內容:

可以看到,不同性質的信息前面有不同的圖標,并且每條信息后面都有超級鏈接,點擊后跳轉到網頁源碼的相應行

3.2.2占位符

console對象上的5種方法,都可以使用printf風格的占位符。不過,占位符的種類比較少,只支持字符(%s)、整數(%d或%i)、浮點數(%f)和對象(%o)四種。比如:

console.log( "%d年%d月%d日" , 2011,3,26 );console.log( "圓周率是%f" , 3.1415926 );

%o占位符,可以用來查看一個對象內部情況。比如,有這樣一個對象:

  var dog = {} ;dog.name = "大毛";dog.color  = "黃色";

然后,對它使用o%占位符:

console.log( "%o" , dog );

3.2.3分組顯示

console.group();  console.groupEnd(); (這兩個方法是成對使用的)
console.group("第一組信息");
console.log("第一組第一條");
console.log("第一組第二條");
console.groupEnd();
console.group("第二組信息");
console.log("第二組第一條");
console.log("第二組第二條");
console.groupEnd();

點擊組標題,該組信息會折疊或展開。

3.2.4顯示對象屬性和方法

console.dir();

比如,現在為第二節的dog對象,添加一個bark()方法,然后用 “dir();” 顯示出來:

  dog.bark = function(){ alert( "汪汪汪" ); };console.dir( dog );

3.2.5獲取某個節點所包含的所有html/xml代碼

console.dirxml()

  var table = document.getElementById("table1");  //獲取節點console.dirxml( table );  //顯示節點的所有代碼

3.2.6判斷一個表達式或變量是否為真

console.assert()

  var result = 0;console.assert( result );  //falsevar year = 2000;console.assert( year == 2011 );  //false

3.2.7追蹤函數的調用軌跡

console.trace() 用來追蹤函數的調用軌跡。比如,有一個加法函數:

function add(a,b){ return a+b;}?如果想知道這個函數是如何被調用的,在其中加入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 ); }

運行后,會顯示add()的調用軌跡,從上到下依次為add()、add1()、add2()、add3()

3.2.8顯示代碼的運行時間

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

  console.time( "計時器一" );for( var i=0;i<1000;i++ ){for(var j=0;j<1000;j++){}}console.timeEnd( "計時器一" );

3.2.9性能分析

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

假定有一個函數Foo(),里面調用了另外兩個函數funcA()和funcB(),其中funcA()調用10次,funcB()調用1次。

  function Foo(){for(var i=0;i<10;i++){funcA(1000);}funcB(10000);}function funcA(count){for(var i=0;i<count;i++){}}function funcB(count){for(var i=0;i<count;i++){}}

然后分析 “Foo();” 的運行性能:

  console.profile( '性能分析器一' );Foo();console.profileEnd();

參考資料:

https://www.php.cn/faq/496512.html

https://www.cnblogs.com/yachao1120/p/10748333.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/696349.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/696349.shtml
英文地址,請注明出處:http://en.pswp.cn/news/696349.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Jmeter實現階梯式線程增加的壓測

安裝相應jmeter 插件 1&#xff1a;安裝jmeter 管理插件&#xff1a; 下載地址&#xff1a;https://jmeter-plugins.org/install/Install/&#xff0c;將下載下來的jar包放到jmeter文件夾下的lib/ext路徑下&#xff0c;然后重啟jmeter。 2&#xff1a;接著打開 選項-Plugins Ma…

在Linux上安裝Docker: 一站式指南

Docker 是一款強大的容器化平臺&#xff0c;為開發者提供了一種輕松打包、發布和運行應用的方式。在本文中&#xff0c;我們將探討如何在Linux操作系統上安裝Docker&#xff0c;為你提供一站式指南。 步驟1: 卸載舊版本 在安裝新版Docker之前&#xff0c;建議先卸載舊版本&am…

三十年一個大輪回!日股突破“泡沫時期”歷史高點

2月22日周四&#xff0c;英偉達四季報業績超預期&#xff0c;而且本季度業績指引非常樂觀&#xff0c;提振美股股指期貨并成為芯片股和AI概念股情緒的重要催化劑。今日亞洲芯片股和AI股起飛&#xff0c;日本在芯片股的帶動下突破1989年泡沫時期以來的歷史最高收盤價。 美股方面…

我之前炒股虧麻了,找百融云AI Agent談了談心

春節之前&#xff0c;A股和H股都跌麻了&#xff0c;但是機構的路演和調研反而多了。因為&#xff1a;寫不完的安撫、說不完的陪伴、聽不完的客戶指責、以及撿不完的AH股便宜貨。 有一位血液里流淌著美式咖啡的職場白領&#xff0c;雖然這些年在股市過得很不如意&#xff0c;但…

C語言---鏈表

一.定義 鏈表是由一系列節點組成&#xff0c;每個結點包含兩個域&#xff0c;一個是數據域&#xff0c;數據域用來保存用戶數據&#xff0c;另一個是指針域&#xff0c;保存下一個節點的地址。鏈表在內存中是非連續的。 二.分類 靜態鏈表 動態鏈表 單向鏈表 雙向鏈表 循環鏈…

maven使用問題及解決辦法匯總

文章目錄 1、maven clean后打包出現Cannot create resource output directory2、把已有jar包打包進本地maven倉庫 1、maven clean后打包出現Cannot create resource output directory 主要原因是target目錄被別的程序占用了&#xff0c;最笨的辦法是重啟電腦&#xff0c;當然也…

C++跨模塊釋放內存

linux一個進程只有一個堆&#xff0c;不要考慮這些問題&#xff0c;但是windows一個進程可能有多個堆&#xff0c;要在對應的堆上釋放。 一&#xff0c; MT改MD 一個進程的地址空間是由一個可執行模塊和多個DLL模塊構成的&#xff0c;這些模塊中&#xff0c;有些可能會鏈接到…

代碼隨想錄訓練營第29天| 491.遞增子序列、46.全排列、47.全排列 II

491.遞增子序列 題目鏈接&#xff1a;491. 非遞減子序列 - 力扣&#xff08;LeetCode&#xff09; class Solution {List<List<Integer>> ans new ArrayList<>();public List<List<Integer>> findSubsequences(int[] nums) {backtrack(nums, …

(十三)【Jmeter】線程(Threads(Users))之tearDown 線程組

簡述 操作路徑如下: 作用:在正式測試結束后執行清理操作,如關閉連接、釋放資源等。配置:設置清理操作的采樣器、執行順序等參數。使用場景:確保在測試結束后應用程序恢復到正常狀態,避免資源泄漏或對其他測試的影響。優點:提供清理操作,確保測試環境的整潔和可重復性…

租用海外服務器,自己部署ChatGPT-Next-Web,實現ChatGPT聊天自由,還可以分享給朋友用

前言 如果有好幾個人需要使用ChatGPT&#xff0c;又沒有魔法上網環境&#xff0c;最好就是自己搭建一個海外的服務器環境&#xff0c;然后很多人就可以同時直接用了。 大概是情況是要花80元租一個一年的海外服務器&#xff0c;花15元租一個一年的域名&#xff0c;然后openai 的…

centos安裝擴展

centos下安裝php擴展時遇到的問題php 1.imapgit cd /root/php-5.6.27/ext/imap /usr/local/php/bin/phpize ./configure --prefix/usr/local/imap 錯誤1github configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happe…

一 些有代表性的相位解包裹算法

Itoh首先給出了傳統解包裹算法的數學描述!。傳統的相位解包裹操作是通過對空間相鄰點相位值的比較來完成的。根據抽樣定理&#xff0c;如果相鄰采樣點的相位差不超過z&#xff0c;則對應的相位解包裹處理是非常簡單的&#xff0c;理論上以某點為起始點沿某一路徑對包裹相位的差…

中科院計算所:什么情況下,大模型才需要檢索增強?

ChatGPT等大型語言模型在自然語言處理領域表現出色。但有時候會表現得過于自信&#xff0c;對于無法回答的事實問題&#xff0c;也能編出一個像樣的答案來。 這類胡說亂說的答案對于醫療等安全關鍵的領域來說&#xff0c;是致命的。 為了彌補這一缺陷&#xff0c;研究者們提出…

ios抓包Tunnel to......443

fiddler官網下載“CertMaker for iOS and Android”插件&#xff0c;官網插件&#xff1a;https://www.telerik.com/fiddler/add-ons 雙擊運行插件后&#xff0c;重啟fiddler&#xff0c;ios重新安裝證書即可

貓頭虎分享已解決Bug || 系統更新失敗(System Update Failure):UpdateError, UpgradeFailure

博主貓頭虎的技術世界 &#x1f31f; 歡迎來到貓頭虎的博客 — 探索技術的無限可能&#xff01; 專欄鏈接&#xff1a; &#x1f517; 精選專欄&#xff1a; 《面試題大全》 — 面試準備的寶典&#xff01;《IDEA開發秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鴻蒙》 …

Java并發編程面試題53道-JUC

Java中的JUC是"Java Concurrency Utilities"的縮寫&#xff0c;它是指Java平臺從Java 5版本開始引入的一系列用于處理多線程并發編程的工具類和框架。這個包(java.util.concurrent)極大地增強了Java在并發編程領域的支持&#xff0c;提供了一系列高級抽象如線程池&am…

Sora:視頻生成模型作為世界模擬器

我們探索了視頻數據上生成模型的大規模訓練。具體來說&#xff0c;我們在可變持續時間、分辨率和長寬比的視頻和圖像上聯合訓練文本條件擴散模型。我們利用了一個在視頻和圖像潛在碼的時空塊上操作的變壓器架構。我們規模最大的模型 Sora 能夠生成一分鐘的高保真視頻。我們的結…

一周學會Django5 Python Web開發-Django5路由重定向

鋒哥原創的Python Web開發 Django5視頻教程&#xff1a; 2024版 Django5 Python web開發 視頻教程(無廢話版) 玩命更新中~_嗶哩嗶哩_bilibili2024版 Django5 Python web開發 視頻教程(無廢話版) 玩命更新中~共計25條視頻&#xff0c;包括&#xff1a;2024版 Django5 Python we…

代碼隨想錄算法訓練營第21天—回溯算法01 | ● 理論基礎 ● *77. 組合

理論基礎 回溯是一種純暴力搜索的方法&#xff0c;它和遞歸相輔相成&#xff0c;通常是執行完遞歸之后緊接著執行回溯相較于以往使用的for循環暴力搜索&#xff0c;回溯能解決更為復雜的問題&#xff0c;如以下的應用場景應用場景 組合問題 如一個集合{1,2,3,4}&#xff0c;找…

alibabacloud學習筆記06(小滴課堂)

講Sentinel流量控制詳細操作 基于并發線程進行限流配置實操 在瀏覽器打開快速刷新會報錯 基于并發線程進行限流配置實操 講解 微服務高可用利器Sentinel熔斷降級規則 講解服務調用常見的熔斷狀態和恢復 講解服務調用熔斷例子 我們寫一個帶異常的接口&#xff1a;