近來,從新扒了一下 js 的所有的大概內容,發現很多東西都是 在我寫項目的時候 遇到的坑,但是 教程 早就 已經 給出了提示。
其實,若真的是 沒有用過js 去 直接 看一遍 ,也是一樣避免不了這樣的 情況,所有 這都是 反復的過程,? 實踐與理論 的互補
下面就是 在我重新閱讀的時候 覺得 很值得注意的點,也是 我們經常遇到的坑的地方
1. 關于數組的索引
*** 數組可以用 [0] 來獲取 ,["屬性"] 來獲取? ,但是 若 是先用? 【屬性】來獲取了,那么以后就不可以用 【0】下標的方式來獲取 數組的值
*** object? 的屬性值 只能用 【“屬性”】 來獲取 值
*** 注意點,js 中? 數組 是很特殊的 ,它的類型是 object? 所以 當接到一個變量的時候 ,你是不知道是? object? 還是 Array 的(特別需要注意的點)
2. Undefined 和 Null 的 區別
var? obj = "xxx";
*** Undefined 針對的是 obj 是否 被 申明? 當obj 被 申明了,下面才可以談 Null? (指的是 值 為Null)
記得正確 使用方法? (分清 先后 順序)
if (type0f(obj) !== "undefined" && obj !== null)
3. 程序的作用域的問題
4 自調用的函數
******* 在js 中 函數 后面 (fun)() 表示 此函數需要自己執行以一下 (后面很有用處,貌似 在 很多 request 返回中 有很多的 用處,具體很多用法下面會有)
5.Arguments 對象
******** 主要用于 獲取 函數 的每個參數 ,因為之前是沒有接觸過
6. 關于全局函數的 用法
********** 其實,全局函數 就是 window 對象,就是用 window 來調用
7.函數作為對象方法調用?
************* 其實 有點感覺像是 OC 中的 創建一個 類,是可以這么用的 類里面有屬性 和 方法 ,而 方法當然就是 函數
8.全局變量
**** 1.當 在 函數的外面定義的 ==>全局函數 ;在函數內部定義的是 局部函數
*****2.當你在 函數內部 沒有 var? ,而是直接? obj=xx ,那么就是 全局函數
***** 3. 當全局函數 與 局部函數名稱 一樣的時候 ,他們的值 是相互不會 影響的
8.閉包? (需要好好研究,還沒有全部吃透)
9.事件的冒泡 和 捕獲
**** 在 DOM 的節點 上 同時加了? 點擊事件 ,我們是可以 定義 到底是父節點 還是 子節點 來相應這個事件 (一般不會用到)
10.在 JS 中創建和添加 DOM 節點
11.刪除 字節點 必須 找到 其父節點? 去刪除 它 方法如下
12.關于 date 的用法 ,下面是一個 用到的 鐘表的實時數據 (更多date的用法 可以在教程里面找)
13.給 Array 等 js 中原生的 對象 添加 方法 ,類似于 OC 里面擴展 分類
14.js 中 Math (原生對象)的用法
15.正則表達式
************ 直接 去網站查吧,我也沒有 用過,正則表達式 是一門 很牛逼的技術
http://www.runoob.com/js/js-obj-regexp.html
16.關于屏幕尺寸,瀏覽器 尺寸
17.獲取 本機的域名? 主機 等
18.window 的歷史記錄
19.window 的navaigation
*** 可以獲取 運行的 設備,瀏覽器的版本信息 等 (應該在 做 移動端 和 pc 端兼容的時候回有用到)
20.cookes
**** 需要 以后好好研究 ,項目做的越深 肯定 會有 用,暫且先放著
http://www.runoob.com/js/js-cookies.html