『壹』 大數據技術Hadoop筆試題
大數據技術Hadoop筆試題
導讀:Hadoop有高容錯性的特點,並且設計用來部署在低廉的(low-cost)硬體上。以下是由我J.L為您整理推薦的面試筆試題目和經驗,歡迎參考閱讀。
單項選擇題
1. 下面哪個程序負責 HDFS 數據存儲。
a)NameNode
b)Jobtracker
c)Datanode
d)secondaryNameNode
e)tasktracker
2. HDfS 中的 block 默認保存幾份?
a)3 份
b)2 份
c)1 份
d)不確定
3. 下列哪個程序通常與 NameNode 在一個節點啟動?
a)SecondaryNameNode
b)DataNode
c)TaskTracker
d)Jobtracker
4. Hadoop 作者
a)Martin Fowler
b)Kent Beck
c)Doug cutting
5. HDFS 默認 Block Size
a)32MB
b)64MB
c)128MB
6. 下列哪項通常是集群的最主要瓶頸
a)CPU
b)網路
c)磁碟
d)內存
7. 關於 SecondaryNameNode 哪項是正確的?
a)它是 NameNode 的熱備
b)它對內存沒有要求
c)它的目的是幫助 NameNode 合並編輯日誌,減少 NameNode 啟動時間
d)SecondaryNameNode 應與 NameNode 部署到一個節點
多選題
8. 下列哪項可以作為集群的管理工具
a)Puppet
b)Pdsh
c)Cloudera Manager
d)d)Zookeeper
9. 配置機架感知的下面哪項正確
a)如果一個機架出問題,不會影響數據讀寫
b)寫入數據的時候會寫到不同機架的 DataNode 中
c)MapRece 會根據機架獲取離自己比較近的網路數據
10. Client 端上傳文件的時候下列哪項正確
a)數據經過 NameNode 傳遞給 DataNode
b)Client 端將文件切分為 Block,依次上傳
c)Client 只上傳數據到一台 DataNode,然後由 NameNode 負責 Block 復制工作
11. 下列哪個是 Hadoop 運行的模式
a)單機版
b)偽分布式
c)分布式
12. Cloudera 提供哪幾種安裝 CDH 的方法
a)Cloudera manager
b)Tar ball
c)Yum d)Rpm
判斷題
13. Ganglia 不僅可以進行監控,也可以進行告警。( )
14. Block Size 是不可以修改的。( )
15. Nagios 不可以監控 Hadoop 集群,因為它不提供 Hadoop 支持。( )
16. 如果 NameNode 意外終止,SecondaryNameNode 會接替它使集群繼續工作。( )
17. Cloudera CDH 是需要付費使用的。( )
18. Hadoop 是 Java 開發的,所以 MapRece 只支持 Java 語言編寫。( )
19. Hadoop 支持數據的隨機讀寫。( )
20. NameNode 負責管理 metadata,client 端每次讀寫請求,它都會從磁碟中讀取或則會寫入 metadata 信息並反饋 client 端。( )
21. NameNode 本地磁碟保存了 Block 的位置信息。( )
22. DataNode 通過長連接與 NameNode 保持通信。( )
23. Hadoop 自身具有嚴格的許可權管理和安全措施保障集群正常運行。( )
24. Slave 節點要存儲數據,所以它的磁碟越大越好。( )
25. hadoop dfsadmin –report 命令用於檢測 HDFS 損壞塊。( )
26. Hadoop 默認調度器策略為 FIFO( )
27. 集群內每個節點都應該配 RAID,這樣避免單磁碟損壞,影響整個節點運行。( )
28. 因為 HDFS 有多個副本,所以 NameNode 是不存在單點問題的。( )
29. 每個 map 槽就是一個線程。( )
30. Maprece 的 input split 就是一個 block。( )
31. NameNode 的 Web UI 埠是 50030,它通過 jetty 啟動的 Web 服務。( )
32. Hadoop 環境變數中的 HADOOP_HEAPSIZE 用於設置所有 Hadoop 守護線程的內存。它默認是 200 GB。( )
33. DataNode 首次加入 cluster 的時候,如果 log 中報告不兼容文件版本,那需要 NameNode執行“Hadoop namenode -format”操作格式化磁碟。( )
別走開,答案在後面哦!
1. 下面哪個程序負責 HDFS 數據存儲。答案C datanode
a)NameNode
b)Jobtracker
c)Datanode
d)secondaryNameNode
e)tasktracker
2. HDfS 中的 block 默認保存幾份? 答案A默認3分
a)3 份
b)2 份
c)1 份
d)不確定
3. 下列哪個程序通常與 NameNode 在一個節點啟動?答案D
a)SecondaryNameNode
b)DataNode
c)TaskTracker
d)Jobtracker
此題分析:
hadoop的集群是基於master/slave模式,namenode和jobtracker屬於master,datanode和 tasktracker屬於slave,master只有一個,而slave有多個SecondaryNameNode內存需求和NameNode在一個數量級上,所以通常secondary NameNode(運行在單獨的物理機器上)和NameNode運行在不同的機器上。
JobTracker和TaskTracker
JobTracker 對應於 NameNode
TaskTracker 對應於 DataNode
DataNode 和NameNode 是針對數據存放來而言的
JobTracker和TaskTracker是對於MapRece執行而言的
maprece中幾個主要概念,maprece整體上可以分為這么幾條執行線索:obclient,JobTracker與TaskTracker。
1、JobClient會在用戶端通過JobClient類將應用已經配置參數打包成jar文件存儲到hdfs,並把路徑提交到Jobtracker, 然後由JobTracker創建每一個Task(即MapTask和ReceTask)並將它們分發到各個TaskTracker服務中去執行。
2、JobTracker是一個master服務,軟體啟動之後JobTracker接收Job,負責調度Job的每一個子任務task運行於 TaskTracker上,並監控它們,如果發現有失敗的task就重新運行它。一般情況應該把JobTracker部署在單獨的機器上。
3、TaskTracker是運行在多個節點上的slaver服務。TaskTracker主動與JobTracker通信,接收作業,並負責直接執行每一個任務。TaskTracker都需要運行在HDFS的DataNode上。
4. Hadoop 作者 答案C Doug cutting
a)Martin Fowler
b)Kent Beck
c)Doug cutting
5. HDFS 默認 Block Size 答案:B
a)32MB
b)64MB
c)128MB
(因為版本更換較快,這里答案只供參考)
6. 下列哪項通常是集群的最主要瓶頸:答案:C磁碟
a)CPU
b)網路
c)磁碟IO
d)內存
該題解析:
首先集群的目的是為了節省成本,用廉價的pc機,取代小型機及大型機。小型機和大型機有什麼特點?
1.cpu處理能力強
2.內存夠大
所以集群的瓶頸不可能是a和d
3.網路是一種稀缺資源,但是並不是瓶頸。
4.由於大數據面臨海量數據,讀寫數據都需要io,然後還要冗餘數據,hadoop一般備3份數據,所以IO就會打折扣。
7. 關於 SecondaryNameNode 哪項是正確的?答案C
a)它是 NameNode 的熱備
b)它對內存沒有要求
c)它的目的是幫助 NameNode 合並編輯日誌,減少 NameNode 啟動時間
d)SecondaryNameNode 應與 NameNode 部署到一個節點。
多選題:
8. 下列哪項可以作為集群的管理?答案:ABD
a)Puppet
b)Pdsh
c)Cloudera Manager
d)Zookeeper
9. 配置機架感知的下面哪項正確:答案ABC
a)如果一個機架出問題,不會影響數據讀寫
b)寫入數據的時候會寫到不同機架的 DataNode 中
c)MapRece 會根據機架獲取離自己比較近的網路數據
10. Client 端上傳文件的時候下列哪項正確?答案B
a)數據經過 NameNode 傳遞給 DataNode
b)Client 端將文件切分為 Block,依次上傳
c)Client 只上傳數據到一台 DataNode,然後由 NameNode 負責 Block 復制工作
該題分析:
Client向NameNode發起文件寫入的請求。
NameNode根據文件大小和文件塊配置情況,返回給Client它所管理部分DataNode的信息。
Client將文件劃分為多個Block,根據DataNode的地址信息,按順序寫入到每一個DataNode塊中。
11. 下列哪個是 Hadoop 運行的模式:答案ABC
a)單機版
b)偽分布式
c)分布式
12. Cloudera 提供哪幾種安裝 CDH 的方法?答案:ABCD
a)Cloudera manager
b)Tarball
c)Yum
d)Rpm
判斷題:
13. Ganglia 不僅可以進行監控,也可以進行告警。( 正確)
分析:此題的目的是考Ganglia的'了解。嚴格意義上來講是正確。ganglia作為一款最常用的Linux環境中的監控軟體,它擅長的的是從節點中按照用戶的需求以較低的代價採集數據。但是ganglia在預警以及發生事件後通知用戶上並不擅長。最新的ganglia已經有了部分這方面的功能。但是更擅長做警告的還有Nagios。Nagios,就是一款精於預警、通知的軟體。通過將Ganglia和Nagios組合起來,把Ganglia採集的數據作為Nagios的數據源,然後利用Nagios來發送預警通知,可以完美的實現一整套監控管理的系統。
14. Block Size 是不可以修改的。(錯誤 )
分析:它是可以被修改的Hadoop的基礎配置文件是hadoop-default.xml,默認建立一個Job的時候會建立Job的Config,Config首先讀入hadoop-default.xml的配置,然後再讀入hadoop- site.xml的配置(這個文件初始的時候配置為空),hadoop-site.xml中主要配置需要覆蓋的hadoop-default.xml的系統級配置。
15. Nagios 不可以監控 Hadoop 集群,因為它不提供 Hadoop 支持。(錯誤 )
分析:Nagios是集群監控工具,而且是雲計算三大利器之一
16. 如果 NameNode 意外終止,SecondaryNameNode 會接替它使集群繼續工作。(錯誤 )
分析:SecondaryNameNode是幫助恢復,而不是替代,如何恢復,可以查看
17. Cloudera CDH 是需要付費使用的。(錯誤 )
分析:第一套付費產品是Cloudera Enterpris,Cloudera Enterprise在美國加州舉行的 Hadoop 大會 (Hadoop Summit) 上公開,以若干私有管理、監控、運作工具加強 Hadoop 的功能。收費採取合約訂購方式,價格隨用的 Hadoop 叢集大小變動。
18. Hadoop 是 Java 開發的,所以 MapRece 只支持 Java 語言編寫。(錯誤 )
分析:rhadoop是用R語言開發的,MapRece是一個框架,可以理解是一種思想,可以使用其他語言開發。
19. Hadoop 支持數據的隨機讀寫。(錯 )
分析:lucene是支持隨機讀寫的,而hdfs只支持隨機讀。但是HBase可以來補救。HBase提供隨機讀寫,來解決Hadoop不能處理的問題。HBase自底層設計開始即聚焦於各種可伸縮性問題:表可以很“高”,有數十億個數據行;也可以很“寬”,有數百萬個列;水平分區並在上千個普通商用機節點上自動復制。表的模式是物理存儲的直接反映,使系統有可能提高高效的數據結構的序列化、存儲和檢索。
20. NameNode 負責管理 metadata,client 端每次讀寫請求,它都會從磁碟中讀取或則會寫入 metadata 信息並反饋 client 端。(錯誤)
此題分析:
NameNode 不需要從磁碟讀取 metadata,所有數據都在內存中,硬碟上的只是序列化的結果,只有每次 namenode 啟動的時候才會讀取。
1)文件寫入
Client向NameNode發起文件寫入的請求。
NameNode根據文件大小和文件塊配置情況,返回給Client它所管理部分DataNode的信息。
Client將文件劃分為多個Block,根據DataNode的地址信息,按順序寫入到每一個DataNode塊中。
2)文件讀取
Client向NameNode發起文件讀取的請求。
21. NameNode 本地磁碟保存了 Block 的位置信息。( 個人認為正確,歡迎提出其它意見)
分析:DataNode是文件存儲的基本單元,它將Block存儲在本地文件系統中,保存了Block的Meta-data,同時周期性地將所有存在的Block信息發送給NameNode。NameNode返迴文件存儲的DataNode的信息。
Client讀取文件信息。
22. DataNode 通過長連接與 NameNode 保持通信。( )
這個有分歧:具體正在找這方面的有利資料。下面提供資料可參考。
首先明確一下概念:
(1).長連接
Client方與Server方先建立通訊連接,連接建立後不斷開,然後再進行報文發送和接收。這種方式下由於通訊連接一直存在,此種方式常用於點對點通訊。
(2).短連接
Client方與Server每進行一次報文收發交易時才進行通訊連接,交易完畢後立即斷開連接。此種方式常用於一點對多點通訊,比如多個Client連接一個Server.
23. Hadoop 自身具有嚴格的許可權管理和安全措施保障集群正常運行。(錯誤 )
hadoop只能阻止好人犯錯,但是不能阻止壞人干壞事
24. Slave 節點要存儲數據,所以它的磁碟越大越好。( 錯誤)
分析:一旦Slave節點宕機,數據恢復是一個難題
25. hadoop dfsadmin –report 命令用於檢測 HDFS 損壞塊。(錯誤 )
26. Hadoop 默認調度器策略為 FIFO(正確 )
27. 集群內每個節點都應該配 RAID,這樣避免單磁碟損壞,影響整個節點運行。(錯誤 )
分析:首先明白什麼是RAID,可以參考網路磁碟陣列。這句話錯誤的地方在於太絕對,具體情況具體分析。題目不是重點,知識才是最重要的。因為hadoop本身就具有冗餘能力,所以如果不是很嚴格不需要都配備RAID。具體參考第二題。
28. 因為 HDFS 有多個副本,所以 NameNode 是不存在單點問題的。(錯誤 )
29. 每個 map 槽就是一個線程。(錯誤 )
分析:首先我們知道什麼是map 槽,map 槽->map slotmap slot 只是一個邏輯值 ( org.apache.hadoop.mapred.TaskTracker.TaskLauncher.numFreeSlots ),而不是對應著一個線程或者進程
30. Maprece 的 input split 就是一個 block。(錯誤 )
31. NameNode 的 Web UI 埠是 50030,它通過 jetty 啟動的 Web 服務。(錯誤 )
32. Hadoop 環境變數中的 HADOOP_HEAPSIZE 用於設置所有 Hadoop 守護線程的內存。它默認是 200 GB。( 錯誤)
hadoop為各個守護進程(namenode,secondarynamenode,jobtracker,datanode,tasktracker)統一分配的內存在hadoop-env.sh中設置,參數為HADOOP_HEAPSIZE,默認為1000M。
33. DataNode 首次加入 cluster 的時候,如果 log 中報告不兼容文件版本,那需要 NameNode執行“Hadoop namenode -format”操作格式化磁碟。(錯誤 )
分析:
首先明白介紹,什麼ClusterID
ClusterID
添加了一個新的標識符ClusterID用於標識集群中所有的節點。當格式化一個Namenode,需要提供這個標識符或者自動生成。這個ID可以被用來格式化加入集群的其他Namenode。
二次整理
有的同學問題的重點不是上面分析內容:內容如下:
這個報錯是說明 DataNode 所裝的Hadoop版本和其它節點不一致,應該檢查DataNode的Hadoop版本
;『貳』 大數據開發筆試題
大數據開發程序員去面試的時候,免不了要做筆試或者機試題,千鋒網上有全套的面試題庫,可以去下載看看。
『叄』 從數據分析師考試之筆試試題看職業要求
從數據分析師考試之筆試試題看職業要求
一、異常值是指什麼?請列舉1種識別連續型變數異常值的方法?
異常值(Outlier) 是指樣本中的個別值,其數值明顯偏離所屬樣本的其餘觀測值。在數理統計里一般是指一組觀測值中與平均值的偏差超過兩倍標准差的測定值。
Grubbs』 test(是以Frank E. Grubbs命名的),又叫maximum normed resial test,是一種用於單變數數據集異常值識別的統計檢測,它假定數據集來自正態分布的總體。
未知總體標准差σ,在五種檢驗法中,優劣次序為:t檢驗法、格拉布斯檢驗法、峰度檢驗法、狄克遜檢驗法、偏度檢驗法。
點評:考察的內容是統計學基礎功底。
二、什麼是聚類分析?聚類演算法有哪幾種?請選擇一種詳細描述其計算原理和步驟。
聚類分析(cluster analysis)是一組將研究對象分為相對同質的群組(clusters)的統計分析技術。 聚類分析也叫分類分析(classification analysis)或數值分類(numerical taxonomy)。聚類與分類的不同在於,聚類所要求劃分的類是未知的。
聚類分析計算方法主要有: 層次的方法(hierarchical method)、劃分方法(partitioning method)、基於密度的方法(density-based method)、基於網格的方法(grid-based method)、基於模型的方法(model-based method)等。其中,前兩種演算法是利用統計學定義的距離進行度量。
k-means 演算法的工作過程說明如下:首先從n個數據對象任意選擇 k 個對象作為初始聚類中心;而對於所剩下其它對象,則根據它們與這些聚類中心的相似度(距離),分別將它們分配給與其最相似的(聚類中心所代表的)聚類;然 後再計算每個所獲新聚類的聚類中心(該聚類中所有對象的均值);不斷重復這一過程直到標准測度函數開始收斂為止。一般都採用均方差作為標准測度函數. k個聚類具有以下特點:各聚類本身盡可能的緊湊,而各聚類之間盡可能的分開。
其流程如下:
(1)從 n個數據對象任意選擇 k 個對象作為初始聚類中心;
(2)根據每個聚類對象的均值(中心對象),計算每個對象與這些中心對象的距離;並根據最小距離重新對相應對象進行劃分;
(3)重新計算每個(有變化)聚類的均值(中心對象);
(4)循環(2)、(3)直到每個聚類不再發生變化為止(標准測量函數收斂)。
優點:本演算法確定的K 個劃分到達平方誤差最小。當聚類是密集的,且類與類之間區別明顯時,效果較好。對於處理大數據集,這個演算法是相對可伸縮和高效的,計算的復雜度為 O(NKt),其中N是數據對象的數目,t是迭代的次數。一般來說,K<<N,t<<N 。
缺點:1. K 是事先給定的,但非常難以選定;2. 初始聚類中心的選擇對聚類結果有較大的影響。
點評:考察的內容是常用數據分析方法,做數據分析一定要理解數據分析演算法、應用場景、使用過程、以及優缺點。
三、根據要求寫出SQL
表A結構如下:
Member_ID (用戶的ID,字元型)
Log_time (用戶訪問頁面時間,日期型(只有一天的數據))
URL (訪問的頁面地址,字元型)
要求:提取出每個用戶訪問的第一個URL(按時間最早),形成一個新表(新表名為B,表結構和表A一致)
create table B as select Member_ID, min(Log_time), URL from A group by Member_ID ;
點評:SQL語句,簡單的數據獲取能力,包括表查詢、關聯、匯總、函數等。
另外,這個答案其實是不對的,實現有很多方法,就不貼出來了,大家自己去發揮吧。
四、銷售數據分析
以下是一家B2C電子商務網站的一周銷售數據,該網站主要用戶群是辦公室女性,銷售額主要集中在5種產品上,如果你是這家公司的分析師,
a) 從數據中,你看到了什麼問題?你覺得背後的原因是什麼?
b) 如果你的老闆要求你提出一個運營改進計劃,你會怎麼做?
表如下:一組每天某網站的銷售數據
a) 從這一周的數據可以看出,周末的銷售額明顯偏低。這其中的原因,可以從兩個角度來看:站在消費者的角度,周末可能不用上班,因而也沒有購買該產品的慾望;站在產品的角度來看,該產品不能在周末的時候引起消費者足夠的注意力。
b) 針對該問題背後的兩方面原因,我的運營改進計劃也分兩方面:一是,針對消費者周末沒有購買慾望的心理,進行引導提醒消費者周末就應該准備好該產品;二是,通過該產品的一些類似於打折促銷等活動來提升該產品在周末的人氣和購買力。
點評:數據解讀能力,獲取數據是基本功,僅僅有數據獲取能力是不夠的,其次是對數據的解讀能力。
五、用戶調研
某公司針對A、B、C三類客戶,提出了一種統一的改進計劃,用於提升客戶的周消費次數,需要你來制定一個事前試驗方案,來支持決策,請你思考下列問題:
a) 試驗需要為決策提供什麼樣的信息?
c) 按照上述目的,請寫出你的數據抽樣方法、需要採集的數據指標項,以及你選擇的統計方法。
a) 試驗要能證明該改進計劃能顯著提升A、B、C三類客戶的周消費次數。
b) 根據三類客戶的數量,採用分層比例抽樣;
需要採集的數據指標項有:客戶類別,改進計劃前周消費次數,改進計劃後周消費次數;
選用統計方法為:分別針對A、B、C三類客戶,進行改進前和後的周消費次數的,兩獨立樣本T-檢驗(two-sample t-test)。
點評:業務理解能力和數據分析思路,這是數據分析的核心競爭力。
綜上所述:一個合格的數據分析應該具備統計學基礎知識、數據分析方法、數據獲取、數據解讀和業務理解、數據分析思想幾個方面能力。
『肆』 大數據考試中,以下說法正確的有哪些
2013年稱為「大數據元年」
2010年9月全國計算機等級考試二級C語言筆試試題及答案 一、專選擇題((1)-(10)每題2分,(屬11)-(50)每題1分.共60分)) (1)下列選項中不屬於軟體生命周期開發階段任務的是 A)詳細設計 B)概要設計 C)軟體維護 D)軟體測試 (2)樹是結點。
『伍』 那些陌生又熟悉的前端面試題
過完年需要跳槽的小夥伴還是挺多的,又要開始刷前端面試題了!會不會有一種錯覺,看著這道面試題很熟,但是不知道該如何做?或者有答案又不知道是否正確?或者使用編輯器可以運行出來正確的答案,但是不知道怎麼得來的,這些你都中招了嗎?
JavaScript 語言是一門弱類型語言,存在許多類型錯誤,因此 ES6 引入了嚴格模式概念。
如果不加 『use strict』 常規模式下就是屬於非嚴格模式。
嚴格模式
在 js 文件頂部添加 『use strict』 就屬於嚴格模式,嚴格模式也可以指定在函數內部。
嚴格模式,是為 js 定義來了一種不同的解析與執行模型,在嚴格模式下,ECMAScipt 3 中一些不解和不確定的行為將得到處理,而且會對不安全的操作會拋出異常。『use strict』 會告訴瀏覽器引擎可以切換到嚴格模式執行。
嚴格模式與非嚴格模式區別
常見筆試題:
試試這道筆試題你會做嗎?
要說 js 的深淺拷貝,就不得不提 js 的兩大數據類型:基本數據類型和引用類型。
基本數據類型的變數名和值都存儲在棧中,對於引用類型的變數名存儲在棧中,而值存儲在堆中。由於存儲方式不同,所以導致了他們復制的時候方式不同。
賦值
基本數據類型賦值的時候,創建的基本數據類型會在內存中開辟一個新空間把值復制過來,而引用類型採用的是地址存儲,如果直接把一個引用數據直接賦值給另外一個數據,就相當於直接把自己存儲值的地址給了另外一個變數,所以改變一個的值,也會改變另外一個的值。
深淺拷貝是如何定義的?
假設有 p 和 P 兩個變數,如果P 是拷貝了 p 的,我們通過修改 P 來觀察 p 是否發生改變,如果跟著改變,就是淺拷貝,如果是不改變,就說明是深拷貝。
基本類型復制的時候會開辟新的內存空間,所以兩個值是相互獨立的,引用類型復制的時候就要看是復制的內存地址還是復制一個新的堆。所以深拷貝主要針對的是引用類型的數據。
淺拷貝的常見的方式:
1、直接賦值
2、Object.assign
深拷貝的常見方式:
引用數據類型最常用的就是 Object 和 Array ,引用數據內部的數據也可以是多樣化的,進行深拷貝時,也要適當地根據數據結構進行合適的復制方式,具體的深拷貝方法分別有:
1、數組中只包含基本數據類型
2、對象中只包含基本數據類型
3、對象或數組里含有一層或多層引用數據類型時
深淺拷貝的常見應用主要是數據的增刪改操作。
大廠筆試題:
這是一道關於 this 指向的面試題,接下來我們就說說 this 是如何指向的?
this 對象是運行時基於函數的執行環境綁定的:
看完上述 this 指向解釋,你就可以做上邊的那道面試題了。
如何改變 this 的指向?
call 、bind 和 apply 這三個函數都是用來改變 this 指向的,就是改變函數執行時的上下文。
修改上述面試題:
call 、bind 和 apply 改變 this 指向,最大作用就是實現代碼復用。
至於 call、bind 和 apply 的區別,可以自行去了解下。
有了上邊那個表,事情就變得簡單了!
關系運算符進行運算時,不同類型的值會自動轉化為相同類型值,然後進行
1、兩邊有一個是字元串一個是是數字時,字元串調用 Number 方法,將字元串轉為數字,所以:
2、如果兩邊都是字元串時,按照字元串的 unicode 編碼來轉換的,所以:
3、字元串進項比較時,先比較第一位,如果不相等直接得出結果,如果第一項相等,會繼續使用第二項進行比較。
4、轉為布爾值都為 false 的類型分別有:undefined 、null 、0、NaN、false、『』
5、NaN表示的是非數字,但是這個非數字也是不同的,因此 NaN 不等於 NaN,兩個NaN永遠不可能相等。
6、關系運算有一個數值,將另外一個值也轉為 number 類型。
7、有邏輯運算的,將其他數據類型轉為 boolean 值。
8、直接使用兩個空數組比較,數組地址不同,所以不相等。
評論區可以留下最近你想學習的知識點,或面試題類型!