javascript
【废弃】【WIP】JavaScript 函数
創(chuàng)建: 2017/10/09
更新: 2017/11/03 加上【wip】
廢棄: 2019/02/19 重構(gòu)此篇。原文歸入廢棄
?增加【廢棄中】標(biāo)簽與總體任務(wù)
結(jié)束: 2019/03/12 完成廢棄, 刪除【廢棄中】標(biāo)簽, 添加【廢棄】標(biāo)簽
結(jié)束: 2019/03/03 完成廢棄, 刪除【廢棄中】標(biāo)簽, 添加【廢棄】標(biāo)簽
【TODO】 // TODO: 第9章 關(guān)于函數(shù)的構(gòu)造函數(shù)呼出與call, apply // TODO 8.7 補充即時函數(shù)用途 // TODO: 補充JavaScript編譯過程, p179 // TODO: 8.8及以后| ?函數(shù)的定義 | |||||||||||||||||||||||||||||||
| ? | 所有聲明不分順序,自動排序 | ||||||||||||||||||||||||||||||
| ?普通聲明 | ?function test(a) { ??? return a; ?} ?只有這種在定義后在程序任何位置都可以呼出 | ||||||||||||||||||||||||||||||
| ?函數(shù)字符來定義 | ?var sample = function(a) { 不會被預(yù)處理 ? | ||||||||||||||||||||||||||||||
| ?Object來定義 | ?var name = new function("x", "y", ... , "process") ?最后一個是處理,前面都是參數(shù) ?不會被預(yù)處理 ? | ||||||||||||||||||||||||||||||
| ?箭頭函數(shù)式來定義 | ?var sample = x => x*x; ?不會被預(yù)處理 | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?嵌套函數(shù) | ?函數(shù)內(nèi)部的函數(shù)
| ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?函數(shù)的呼出 | |||||||||||||||||||||||||||||||
| ?函數(shù)的呼出方法 | ?function sample() {}
| ||||||||||||||||||||||||||||||
| ?即時函數(shù) ?(無名函數(shù)) | ?定義與呼出同時進行 ?
| ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?函數(shù)的參數(shù) | |||||||||||||||||||||||||||||||
| ? 參數(shù)的省略 | ?省略掉的為undefined ?undefined是沒有賦值 ?null是賦予的是空值 | ||||||||||||||||||||||||||||||
| ?不固定長度的參數(shù) | ?所有函數(shù)內(nèi)部可用arguments
| ||||||||||||||||||||||||||||||
| ?傳值和傳參 | ?object參數(shù)傳送的是參照(指針) | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?遞歸函數(shù) | |||||||||||||||||||||||||||||||
| ?三種寫法 | ?
| ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?程序的編譯與運行 | |||||||||||||||||||||||||||||||
| ?生成全局對象 | ? | ||||||||||||||||||||||||||||||
| ?解析程序 | ? | ||||||||||||||||||||||||||||||
| ?運行程序 | ? | ||||||||||||||||||||||||||||||
| ?單線程 | ? | ||||||||||||||||||||||||||||||
| ?call對象及本地變量 | ? | ||||||||||||||||||||||||||||||
| ?this的值 | ?被呼出函數(shù)所屬對象 ?函數(shù)內(nèi)部函數(shù)的this是全局變量 | ||||||||||||||||||||||||||||||
| ?命名空間 | ? var a = "a"; function f() {var b = "b";function g() {var c = "c";console.log(a+b+c);} } f();? ? | ||||||||||||||||||||||||||||||
| ?垃圾回收 | ?釋放從全局對象無法到達的量 ?不用在意? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?閉包 | |||||||||||||||||||||||||||||||
| ? | ?JavaScript的所有函數(shù)都是閉包 ?閉包內(nèi)部可以有函數(shù)(閉包) | ||||||||||||||||||||||||||||||
| ?應(yīng)用 | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?命名空間 | |||||||||||||||||||||||||||||||
| ? | ?
? | ||||||||||||||||||||||||||||||
| ?用對象管理程序本地代碼 | ? var myApp = myApp || {};
myApp.login = ...;
myApp.configs = {}; //部分空間內(nèi)部再劃分部分空間 ? ?所有東西追加成屬性 | ||||||||||||||||||||||||||||||
| ?用函數(shù)作為命名空間 | ? (function () {// 程序所有內(nèi)容寫在這里
})(); ? module模式 // 作為即時函數(shù),把module相關(guān)傳遞給指定參數(shù) var Module = Module || {}; (function (_module) {var name = "none"; // 私有變量function getName () { // 私有方法return name;}_module.showName() = function () { // 公共方法 console.log(getName());}})(Module);? ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?作為對象(Object)的函數(shù) | |||||||||||||||||||||||||||||||
| ?函數(shù)也是對象 | ?● 可以代入變量,對象屬性, 數(shù)組元素 ?● 可以作為函數(shù)的參數(shù), 返回值 ?● 可以有屬性和方法 ?● 可以作為不帶名字的字符, 即無名函數(shù) function () {} ?● 可以動態(tài)生成 | ||||||||||||||||||||||||||||||
| ?函數(shù)的屬性(property) | ?
? | ||||||||||||||||||||||||||||||
| ?添加自定義屬性 | ? function test() {...}
test.newProperty = "sample"; // 和其他對象添加屬性一樣寫法 ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?高階函數(shù) | |||||||||||||||||||||||||||||||
| ?定義 | ?以函數(shù)為參數(shù)或返回值的函數(shù) | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?回調(diào)函數(shù) | |||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ?ES6關(guān)于函數(shù)的擴張 | |||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
| ? | ? | ||||||||||||||||||||||||||||||
?
轉(zhuǎn)載于:https://www.cnblogs.com/lancgg/p/8281703.html
總結(jié)
以上是生活随笔為你收集整理的【废弃】【WIP】JavaScript 函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: File IO(NIO.2):路径类 和
- 下一篇: 如何在Spring和Spring MVC