成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

JavaScript為什么這么難?

2021-02-25    分類: 網(wǎng)站建設(shè)

只有真正的javascript程序員才知道javascript太難了。其他程序員都覺得javascript是門玩具語言。

難點(diǎn)

  • 隱式轉(zhuǎn)換

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

JavaScript為什么這么難?JavaScript為什么這么難?
  • this指向問題

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

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

JavaScript為什么這么難?

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

  • 閉包

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

看看例子

JavaScript為什么這么難?

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

  • 作用域鏈

作用域鏈沒什么好說的,直接上代碼

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

  • 原型鏈

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

JavaScript為什么這么難?

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

  • EventLoop

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

例子:

JavaScript為什么這么難?

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

總結(jié)

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

文章題目:JavaScript為什么這么難?
標(biāo)題鏈接:http://jinyejixie.com/news1/102951.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、網(wǎng)站改版、服務(wù)器托管App開發(fā)、域名注冊、品牌網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)
乌拉特后旗| 高州市| 九台市| 南开区| 华容县| 海兴县| 连城县| 张家界市| 宕昌县| 彰化县| 理塘县| 大厂| 越西县| 沈丘县| 南城县| 新干县| 福海县| 汶上县| 容城县| 获嘉县| 勐海县| 新民市| 仙游县| 稻城县| 迭部县| 武乡县| 华安县| 公安县| 封开县| 武陟县| 宁乡县| 广昌县| 全南县| 巴东县| 应城市| 将乐县| 蓬莱市| 呼和浩特市| 卢氏县| 文水县| 凌源市|