国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

node.js - JavaScript的一個不能理解的地方

瀏覽:127日期:2023-09-19 16:47:39

問題描述

最近在學JavaScript(NodeJs)在用for遍歷一個JsonArray的時候發現了一個問題我當時是這樣子寫的:node.js - JavaScript的一個不能理解的地方按道理來說這樣寫應該是錯的,應該要判斷是不是為Null,但是我運行了一下,居然成功了,沒有報錯,輸出也正常黑人問號臉...求告知這是什么原理...難道obj2=obj1.result[i]會返回一個boolean??之前學過JAVA,感覺JavaScript相對JAVA有點不嚴謹,思想有點被禁錮...

問題解答

回答1:

賦值表達式會返回所賦的值。也就是說obj2=obj1.result[i]會返回obj1.result[i]。

js是動態語言,它有隱私轉換的特性,就是在該需要用到某種數據類型的時候,它會通過預先的規則來將傳進來的值轉換成特定的類型。

那么在剛剛賦值表達式obj2=obj1.result[i]中返回值是obj1.result[i],那js引擎就會對obj1.result[i]進行類型轉換成Boolean類型。

如果你obj1.result[i]的值是除NaN,0,undefined,null,’’之外的其他值,都會轉換成true,否則則是false。

回答2:

賦值運算符的返回結果就是這個被賦值的值,這個在各大類 C 的語言里,包括 Java 都是這樣定義的,不足為奇。

Java 里條件判斷只能用布爾值,而 JavaScript 不一樣,這里需要一個布爾值你給的如果不是一個布爾值就會隱式轉換成布爾值。

回答3:

javascript是弱類型的語言,會自動轉的~

回答4:

一個等于號 是賦值的意思,等于你把obj1.result[i]賦給obj2了,所以一直成立

你可以去搜一下 = == ===的區別 看看題就懂了

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 性感美女视频免费网站午夜 | 亚洲超大尺度激情啪啪人体 | 1级黄色毛片 | 欧美一级毛片免费观看视频 | 日韩视频观看 | 高清 国产 日韩 欧美 | 成人综合婷婷国产精品久久免费 | 亚洲情乱 | 欧美成人午夜免费完成 | 在线一区二区观看 | 久久99久久精品免费思思6 | 国产精品亚洲综合网站 | www.av在线.com| 亚欧免费视频 | 亚洲男人a天堂在线2184 | 亚洲欧美日本国产综合在线 | 777444欧美影视| 午夜刺激爽爽视频免费观看 | 最新国产午夜精品视频不卡 | 国产一级黄毛片 | 中文字幕成人免费高清在线视频 | 日韩欧美在线观看视频一区二区 | 日日噜噜噜夜夜爽爽狠狠69 | 中文字幕亚洲日本岛国片 | 久久久久久久99精品免费观看 | 亚洲国产日韩欧美一区二区三区 | 91日韩精品天海翼在线观看 | 国产手机在线精品 | vr欧美乱强伦xxxxx | 日韩欧美第一页 | 欧美性极品hd高清视频 | 人成18亚洲资源在线 | 中文国产成人精品少久久 | 欧美人拘一级毛片 | 日本免费网站视频www区 | 久久久久久久久久久96av | 亚洲成av人片在线观看无码 | 又摸又揉又黄又爽的视频 | 免费观看一级成人毛片 | 18年大片免费在线观看 | 亚洲一区天堂 |