日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

移动端代码规范小结(一)

發(fā)布時間:2025/4/14 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 移动端代码规范小结(一) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?

1、js中use strict的作用域范圍只在當前腳本有效:比如1.js里面調(diào)用2.js的方法,1.js里面聲明"use strict",而2.js里面沒有聲明,則該調(diào)用為正常模式調(diào)用,并非嚴格模式;

2、location.replace與location.href的區(qū)別在于:location.replace方法通過指定URL替換當前緩存在歷史里(客戶端)的項目,因此當使用replace方法之后,你不能通過“前進”和“后退”

來訪問已經(jīng)被替換的URL;location.href方法前進后退按鈕不會失效。

3、由于瀏覽器對于跨域的限制,js不能本地保存跨域的圖片(拿不到圖片的base64);

4、設置和獲取disable, checked, selected等屬性時,請使用推薦的prop方法來替代attr方法(備注:有些瀏覽器上通過attr(“checked”, “checked”)無效);

5、對于each函數(shù),return true同等于continue, return false同等于break;

6、對于頁面的命名里不應該包含大寫字母,eg. isNotAllowed.html(備注:有些瀏覽器不能識別大寫字母);

7、data方法在jQuery里面和zepto里面實現(xiàn)形式是不一樣。

  jQuery里面的data方法存儲的數(shù)據(jù)是jQuery自己保存的。jQ也會獲取一次data-*的數(shù)據(jù),但獲取之后后續(xù)的處理全在jQ的對象里面了,不會在HTML里面體現(xiàn)。

  zepto里面data方法存儲的數(shù)據(jù)會同時寫到元素自身的data-*上面的。會在html里面體現(xiàn)。獲取以data-*開頭的屬性值時,請使用$(...).data(*)函數(shù)。

  原生JS獲取的時候是屬性名是去掉data-,然后變成小駝峰形式,即前面的值應該用dom.dataset.someValue來獲取。反過來也一樣,即通過dom.dataset.someName設置

的值,在HTML上會表示成data-some-name="xx"

  另外,data-*的命名規(guī)則按照規(guī)范,應該是全小寫,詞語間劃分使用"-",比如data-some-value=""。

8、 在for…in…循環(huán)內(nèi),最好用hasOwnProperty函數(shù)來判斷屬性是否為真正屬性,以免處理了無效值;

9、假如某個dom節(jié)點同個函數(shù)中被多次反復使用,可以手動把此值緩存,避免多次查找dom樹。例如var a = $(body);

10、在使用Date對象生成實例的時候,要注意使用標準寫法,不然某些瀏覽器會報錯。?不要習慣使用?new?Date("YYYY-MM-DD?HH:mm:SS"),因為這個格式并不是標準的格式,

但是當前webkit是支持的。長個心眼,如果以后遇到其他瀏覽器報錯或者是webkit放棄了這個支持的時候,方便查找原因;

11、由于JS沒有塊級作用域,因此如果在if塊和else塊里面都用到var i作為計數(shù)器,則可能報重復定義的錯誤;

12、關于變量聲明,Var a=b=0;相當于 var a; a= b; b = 0;b變成了全局變量;

13、for(var key in str) 中變量key在for里面的聲明和在for外面的聲明是一樣的,因為變量聲明會被提前到當前作用域的最前面;

?

轉(zhuǎn)載于:https://www.cnblogs.com/wqhwe/p/5216418.html

總結

以上是生活随笔為你收集整理的移动端代码规范小结(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。