第4章 變量、作用域和內存問題

JavaScript高級程序設計第四章知識點梳理

1、基本類型值和引用類型值

 ? 基本類型值包括:Boolean、String、undefined、Number、Null

 ? 引用類型值:Object

 ? 注意:ECMAScript中所有函數的參數都是按值傳遞的。

2、延長作用域鏈

 ? 當執行流進入下列任何一個語句時,作用域鏈就會得到加長。

 (1)try-catch語句的catch塊;

 (2)with語句

  注意:JavaScript中沒有塊級作用域。

3、垃圾收集

 ? 垃圾收集的兩種策略:(1)標記清除(2)引用計數

 ? 標記清除是目前主流的垃圾收集算法,這種算法的思想是給當前不使用的值加上標記,然后再回收其內存。

 ? 引用計數算法的思想是跟蹤記錄所有值被引用的次數。JavaScript引擎目前都不再使用這種算法;但在IE中訪問原生JavaScript對象(如DOM元素)時,這種算法仍然可能會導致問題。 

  針對上述問題,可以使用解除變量的引用來解決。解除變量的引用不僅有利于消除循環引用現象,而且對垃圾收集也有好處。為了確保有效地回收內存,應該及時解除不再使用的全局對象。全局對象屬性以及循環引用變量的引用。

   

轉載于:https://www.cnblogs.com/sherryStudy/p/charpter_four.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/277868.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277868.shtml
英文地址,請注明出處:http://en.pswp.cn/news/277868.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Teams App如何選擇用戶

當我們在開發app的時候,很多時候需要選擇一個用戶,比如我們開發一個審批的app,就要選擇審批人,所以這個app就需要實現選擇人的界面,而且需要獲取完整的用戶列表,但是要獲取完整的用戶列表又需要app擁有較高…

Python終端如何輸出彩色字體

Python終端如何輸出彩色字體 Python終端如何輸出彩色字體 實現過程:終端的字符顏色是用轉義序列控制的,是文本模式下的系統顯示功能,和具體的語言無關。轉義序列是以ESC開頭,即用\033來完成(ESC的ASCII碼用十進制表示是27&#xf…

ID4收藏

IdentityServer4.Admin https://github.com/skoruba/IdentityServer4.Admin轉載于:https://www.cnblogs.com/superstar/p/10757886.html

Teams Bot庫的JSON

如果你和我一樣,一直使用最新的 asp.net core 來開發teams bot的應用,那么你就會發現當你使用最新的 LTS 3.1版本或者 5.0 版本或者最新的 6.0 版本,asp.net core 默認使用System.Text.Json庫,所以當你在處理 Teams 發送來的請求的…

碼云如何上傳代碼

1.在碼云上創建一個項目,具體操作很簡單就不多說了 2.創建本地倉庫 在本地創建一個test文件夾,文件夾里右鍵Git Bash Here, 進入git。 git init初始化本地倉庫 git add . 把所有文件添加到暫存區 git commit -m “推送備注” 這里是每次推送時候寫的…

v-if v-else-if v-else

1.代碼 <!DOCTYPE html> <html> <head><meta charset"utf-8"><title>測試</title><script src"https://cdn.bootcss.com/vue/2.2.2/vue.min.js"></script> </head> <body><div id"ap…

Teams Bot如何解析和發送 at 用戶

之前有好些看博客的開發者問我有什么較好的方法來解析 at 信息。用戶在channel里發消息給 bot 的時候&#xff0c;通常需要 at bot的名字&#xff0c;當然在消息文字中可能還會 at 其他用戶&#xff0c;比如 bot的名字是 MyBot&#xff0c;那 bot 收到的 Activity 里的 Text 值…

關于Elemet-ui組件Cascader中proper的配置問題

最近做一個地區的二級聯動用上了Cascader組件&#xff0c;但是我的城市數據結構跟他 options的默認的結構不太一樣&#xff1b; 默認的結構如下&#xff1a; 我的數據結構是&#xff1a; 先說我的解決辦法&#xff1a; 一看我的數據結構跟他默認的數據結構不對勁&#xff0c;我…

將Teams app升級到net6

net6 發布已經有一個多月了&#xff0c;因為我的LuckyDraw app是使用Azure app service&#xff0c;當時我查了一下app service還沒有ready&#xff0c;昨天我又查看了一下&#xff0c;發現app service已經默認裝了net6。 那就是時候升級我的LuckyDraw了&#xff0c;如果大家的…

作為程序猿,一定要知道的電腦快捷鍵和Eclipse快捷鍵

2019獨角獸企業重金招聘Python工程師標準>>> 轉載自&#xff1a;Java資源社區 1. F2 當你選中一個文件的話&#xff0c;這意味著“重命名”2. F5 刷新3. CTRLF5 強行刷新4. F12另存為5. Alt &#xff0b;F4 關閉程序6. Home首行7. Ctrl Home游標移動到文字編輯的開…

QCustomplot(一) 能做什么事

閱讀目錄 一、QCustomPlot簡介二、效果預覽三、源碼下載四、相關文章回到頂部一、QCustomPlot簡介 之前在Qt之自繪制餅圖這篇文章的說明中我簡單的描述了下目前依賴于qt的第三方繪圖庫&#xff0c;此后我會針對自己使用QCustomPlot的情況做一總結&#xff0c;以方便大家參考 QC…

在Teams app代碼中enable nullable

昨天講了一下如何把代碼升級到 net6&#xff0c;今天我優化了好幾個小時更新代碼&#xff0c;enable了nullable。 c#的nullable我一直非常喜歡&#xff0c;它可以幫助開發人員&#xff0c;讓開發人員去思考&#xff0c;哪些地方需要可以為null&#xff0c;哪些地方不需要。它并…

shiro(一)簡介、理論知識

2019獨角獸企業重金招聘Python工程師標準>>> 開濤學shiro&#xff1a;http://jinnianshilongnian.iteye.com/blog/2018398 shirospirngmvc參考: https://www.cnblogs.com/sharpest/p/5865732.html http://peirenlei.iteye.com/blog/2086639 https://blog.csdn.net/c…

2019.04.24筆記

*&#xff09;關于swing 今天同學誤解了我的意思&#xff0c;以為我要用java代碼做頁面和圖形&#xff0c;給我推薦了swing。 swing真是眼熟&#xff0c;大學課程里的。通過后臺代碼操作頁面和圖形。記得當年大學時&#xff0c;swing就已經淪為一種過時的技術了。到現在&#x…

Teams 的 Meeting App

Teams 的 Meeting App 已經正式推出了一段時間&#xff0c;相應的文檔也已經較為完善了&#xff0c;我接下來會寫一系列的文章&#xff0c;來介紹如何開發一個自己的Meeting app。這篇文章作為這個系列的第一篇&#xff0c;將介紹 meeting app 是如何被使用的&#xff0c;有哪些…

Github上最受歡迎的Python輕量級框架Flask入門

flask最近終于發布了它的1.0版本更新&#xff0c;從項目開源到最近的1.0版本flask已經走過了8個年頭。# app.py from flask import Flask app Flask(__name__)app.route("/") def hello():return "Hello World!"if __name__ "__main__":app.ru…

mysql表關聯

mysql的表關聯&#xff1a; left join(左聯接) 返回包括左表中的所有記錄和右表中聯結字段相等的記錄 right join(右聯接) 返回包括右表中的所有記錄和左表中聯結字段相等的記錄 inner join(等值連接) 只返回兩個表中聯結字段相等的行 轉載于:https://www.cnblogs.com/bloghua…

開發第一個Meeting App

今天我們來看一下如何使用c# net6 來開發一個 teams的 meeting app。首先先確保本地安裝了最新版本的 net6。創建一個目錄&#xff0c;然后在目錄下輸入下面的命令行&#xff0c;讓 dotnet 來生成一個初步的asp.net core 代碼框架。 dotnet new razor代碼框架生成如下的目錄和…

solrCloud搭建

一.什么是solrCloud&#xff1f; SolrCoud(solr云)是solr提供的分布式搜索方案。當一個系統搜索請求并發很高的時候&#xff0c;就需要使用solrCloud來滿足這些需求 solrCloud是基于solr和zookeeper的分布式的搜索方案&#xff0c;它的主要思想是使用zookeeper作為擠集群配置的…

Linux 添加新用戶賬號并賦予root權限

除了root用戶之外&#xff0c;通常需要為每個管理創建各自的用戶賬號&#xff0c;方便每個管理員登錄使用&#xff0c; 步驟如下&#xff1a; 1. 添加新用戶賬號 useradd mary.lee 2. 為新用戶賬號設置密碼 passwd mary.lee 3. 為新用戶賬號賦予root權限 usermod -a -G root…