alert():
有阻塞作用,不點擊確定,后續代碼無法繼續執行
alert()只能輸出string,如果alert輸出的是對象會自動調用toString()方法
e.g. alert([a,b,c]);//a,b,c
alert不支持多個參數的寫法,只能輸出第一個值
e.g. alert(1,2,3);//1
console.log():
在打印臺輸出
可以打印任何類型的數據
e.g. console.log([a,b,c]);//[a,b,c]
支持多個參數的寫法
e.g. console.log(1,2,3)// 1 2 3
關于原型鏈中的toString()輸出問題:
let e1= { n : 1, valueOf : function(){ return this.n + 4 }, toString : function(){ return this.valueOf() + 5 } } console.log("e1==0 : ", e1==0) console.log("+e1 : ", +e1) console.log("e1 : ", e1) console.log("e1.toString() : ", e1.toString()) alert(e1) //10
運行結果:
原因:console.log()可以打印任何類型的數據。而 alert() 只能輸出string。如果alert輸出是對象會自動調用 toString() 方法。如果想 console.log() 輸出的與alert相同,需要調用 toString() 。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/82599.html
摘要:返回最適合該對象類型的原始值將該對象的原始值以字符串形式返回。這兩個方法一般是交由去隱式調用,以滿足不同的運算情況。進行強轉字符串類型時將優先調用方法,強轉為數字時優先調用。在有運算操作符的情況下,的優先級高于。 valueOf():返回最適合該對象類型的原始值;toString(): 將該對象的原始值以字符串形式返回。 這兩個方法一般是交由JS去隱式調用,以滿足不同的運算情況。在數值...
摘要:首先,說下工廠函數。應對某些場景,工廠函數并不能滿足我們,如我需要判斷樹是不是動物類型你會發現你并沒辦法。這時候構造函數就出現了我的性別是猴子母猴子我的性別是母跟工廠函數很像,只是沒有了創建對象和,并且都用添加屬性。 首先,說下工廠函數。顧名思義,就好比一個工廠一樣,可以批量制造某種類型的東西。其實說白了就是封裝了個方法減少重復工作,相信稍微有點碼齡的人都懂。上代碼: function...
摘要:回調函數,一般在同步情境下是最后執行的,而在異步情境下有可能不執行,因為事件沒有被觸發或者條件不滿足。同步方式請求異步同步請求當請求開始發送時,瀏覽器事件線程通知主線程,讓線程發送數據請求,主線程收到 一直以來都知道JavaScript是一門單線程語言,在筆試過程中不斷的遇到一些輸出結果的問題,考量的是對異步編程掌握情況。一般被問到異步的時候腦子里第一反應就是Ajax,setTimse...
摘要:綜上所述有原型鏈繼承,構造函數繼承經典繼承,組合繼承,寄生繼承,寄生組合繼承五種方法,寄生組合式繼承,集寄生式繼承和組合繼承的優點于一身是實現基于類型繼承的最有效方法。 一、前言 繼承是面向對象(OOP)語言中的一個最為人津津樂道的概念。許多面對對象(OOP)語言都支持兩種繼承方式::接口繼承 和 實現繼承 。 接口繼承只繼承方法簽名,而實現繼承則繼承實際的方法。由于js中方法沒有簽名...
摘要:有需要還可以修改指向謙龍寄生組合式繼承思路是通過借用構造函數來繼承屬性,通過原型鏈的混合形式來繼承方法改變執行環境實現繼承有需要還可以修改指向謙龍謙龍拷貝繼承該方法思路是將另外一個對象的屬性和方法拷貝至另一個對象使用遞歸 前言 js中實現繼承的方式只支持實現繼承,即繼承實際的方法,而實現繼承主要是依靠原型鏈來完成的。 原型鏈式繼承 該方式實現的本質是重寫原型對象,代之以一個新類型的實例...
閱讀 2305·2021-09-28 09:45
閱讀 3596·2021-09-24 09:48
閱讀 2256·2021-09-22 15:49
閱讀 3093·2021-09-08 16:10
閱讀 1586·2019-08-30 15:54
閱讀 2317·2019-08-30 15:53
閱讀 3012·2019-08-29 18:42
閱讀 2865·2019-08-29 16:19