自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

JavaScript為什么這么難?

開(kāi)發(fā) 前端 新聞
只有真正的javascript程序員才知道javascript太難了。其他程序員都覺(jué)得javascript是門(mén)玩具語(yǔ)言。

 只有真正的javascript程序員才知道javascript太難了。其他程序員都覺(jué)得javascript是門(mén)玩具語(yǔ)言。 

[[275398]]

難點(diǎn)

  • 隱式轉(zhuǎn)換

javascript的真值表,可以體驗(yàn)一下。

JavaScript為什么這么難?

 

JavaScript為什么這么難?

 

  • this指向問(wèn)題

javascript中的this不是靜態(tài)綁定的,而是動(dòng)態(tài)綁定的。而且可以人為改變指向。

看看下面這個(gè)例子

JavaScript為什么這么難?

控制臺(tái)將輸出什么?

  • 閉包

javascript中的作用域是可以通過(guò)向上查找的,通過(guò)閉包可以讓函數(shù)引用底層的作用域變量,可以在高層訪問(wèn)底層的作用域。好象沒(méi)什么難得。

看看例子

JavaScript為什么這么難?

這個(gè)例子輸出什么?

  • 作用域鏈

作用域鏈沒(méi)什么好說(shuō)的,直接上代碼

為什么輸出的undefined,不懂的自己去找原因。

  • 原型鏈

javascript使用一種非主流的對(duì)象機(jī)制,基于原型鏈的對(duì)象繼承機(jī)制。這需要我們拋棄很多語(yǔ)言的Class的思想。認(rèn)真研究下這個(gè)原型鏈。

JavaScript為什么這么難?

理解在對(duì)象構(gòu)造器中this.getName,A.prototype.getName,和A.getName的區(qū)別。

  • EventLoop

javascript中代碼不像很多其他語(yǔ)言一樣,代碼是順序執(zhí)行的。不管是瀏覽器中還是Nodejs中都存在一個(gè)EventLoop。讓代碼編碼變得不可控。Nodejs中難度更是成倍增加。

例子:

JavaScript為什么這么難?

思考一下,運(yùn)行結(jié)果是什么?

總結(jié)

javascript的難點(diǎn)還沒(méi)有全部一一列出。javascript是一門(mén)支持多范式的編程語(yǔ)言,說(shuō)白了就是大多javascript都沒(méi)有統(tǒng)一規(guī)范,加上javascript高度靈活性,各種奇淫巧技,導(dǎo)致很多代碼難以閱讀。很多難點(diǎn)都是javascript本身自身缺陷造成的。很多優(yōu)秀實(shí)踐其實(shí)就是ES6,ES8,ES9...。

責(zé)任編輯:華軒 來(lái)源: 今日頭條
相關(guān)推薦

2017-01-23 13:08:46

大數(shù)據(jù)客戶畫(huà)像技術(shù)

2020-11-10 22:53:54

oracle數(shù)據(jù)庫(kù)

2020-12-10 13:37:08

人工智能人機(jī)融合

2020-12-08 05:41:46

人工智能人機(jī)融合機(jī)器學(xué)習(xí)

2020-02-28 16:10:13

攜號(hào)轉(zhuǎn)網(wǎng)運(yùn)營(yíng)商中國(guó)電信

2018-06-22 07:51:13

2020-11-19 15:34:47

前端招聘開(kāi)發(fā)

2022-06-12 23:36:26

微服務(wù)架構(gòu)單體應(yīng)用

2011-05-12 14:57:58

2022-09-16 10:14:41

消息順序性分布式架構(gòu)

2012-11-27 10:36:19

公有云Azure數(shù)據(jù)中心

2019-08-08 16:39:37

ERP信息化中小企業(yè)

2022-09-19 16:38:59

數(shù)據(jù)產(chǎn)品SaaSSnowflake

2022-06-10 14:13:43

數(shù)字化轉(zhuǎn)型企業(yè)IT中小企業(yè)

2018-08-16 08:03:21

Python語(yǔ)言解釋器

2020-02-27 15:44:41

Nginx服務(wù)器反向代理

2013-03-04 10:10:36

WebKit瀏覽器

2024-02-26 21:15:20

Kafka緩存參數(shù)

2022-06-02 08:03:19

PyCharmPython代碼

2020-02-27 21:03:30

調(diào)度器架構(gòu)效率
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)