javascript權(quán)威指南(第六版)

js ——>>

display:隱藏元素,不保留所占空間

visivility:隱藏元素,保留所占空間

{name:xh,year:10}:對象

[1,2,3]:數(shù)組

is精度帶來的表述問題

0.3-0.2 不等于0.1

toFixed()進(jìn)行四舍五入或者嘗試《js精度達(dá)不到解決方法》

getDay():0為周日1為周一~6為周六

getMonth():從0計數(shù)eg:1月獲取值為0,2月為1以此類推

getUTCHours():世界標(biāo)準(zhǔn)時間

lastIndexOf():字符最后出現(xiàn)的位置,區(qū)別與IndexOf()

算數(shù)表達(dá)式 a++的執(zhí)行機制 p82譯注1

var i=1;

i++ --> 1

++i -->3

i++后增量

++i前增量

===嚴(yán)格相等、恒等運算符

js中所有大寫字母都小于小寫字母,js嚴(yán)格區(qū)分大小寫,嚴(yán)格按照ASCII碼表排序

Evsal() :不能被賦予別名、若通過別名調(diào)用直接拋EvalError異常

通過delete刪除對象不僅是設(shè)置了一個undefined值

continue:執(zhí)行下一次循環(huán)

break:退出循環(huán)

在for與wile循環(huán)中有區(qū)別

while中使用continue如果不做循環(huán)變量修改會陷入死循環(huán)、因為continue后是回到while頭部再次執(zhí)行。而在for循環(huán)中continue后會執(zhí)行增加或修改變量值。所以while循環(huán)并不能完全等價

for/in循環(huán):更方便地遍歷對象屬性成員

短路算法:多用于避免錯誤

eg:

var a = -1, b = 2, c = -3, d = -1;

d =? a+1>0 && ++b>0 &&? c-4>0;

結(jié)果:a=-1,b=2,c=-3.d=false

當(dāng)執(zhí)行到第一個‘a(chǎn)+1>0’是得到值fase,停止執(zhí)行后面數(shù)據(jù)

從0開始的不連續(xù)數(shù)組

Array.join()將所有元素轉(zhuǎn)換為字符串拼接到一起,返回最后生成的字符串

Array.reverse()將元素顛倒順序,返回逆序數(shù)組

Array.sort()將元素排序并返回排序后的數(shù)組

Array.concat()創(chuàng)建并返回一個新數(shù)組

Array.slice()返回指定數(shù)組的一個片段或子數(shù)組

Array.splice()插入或刪除元素

Array.push()在數(shù)組尾部添加一個或多個元素,返回數(shù)組新長度

Array.pop()在數(shù)組的尾部刪除最后一個元素并返回他刪除的值

Array.unshift()在數(shù)組的頭部添加一個或多個元素 --與push類似

Array.shift()在數(shù)組的頭部刪除一個元素 --與pop類似

toLocaleString()將元素轉(zhuǎn)換為字符傳且使用本地化(自定義)分隔符將這些字符串連接起來。用法【https://blog.csdn.net/weixin_39749820/article/details/82869537】

eg:

var a = [1,3,5,2,4];

a.join("-");// => "1-3-5-2-4"

a.reverse();// =>?[4, 2, 5, 3, 1]

a.sort();// =>[1, 2, 3, 4, 5]

a.concat(6,7);// =>[1, 3, 5, 2, 4, 6, 7]

a.slice(1,3);// =>[3, 5]

a.splice(2);// =>[5, 2, 4]

a.splice(2,1);// =>[5]

var b = [];

b.push(1,2);// =>?[1, 2]

b.push([3,4]);// =》[1,2,[3,4]]

b.pop();// =>[1, 2] 返回?[3,4]

b.unshift(0);// =>[0, 1, 2]

b.shift();// =>[1, 2] 返回0

var c = 12345678;

c.toLocaleString();// =>12,345,678

var dates = new Date();

dates.toLoacaleString();// =>2019/12/6 下午5:27:28

...(未完待續(xù))

slice(開始位置,結(jié)束位置)

地圖:反應(yīng)巨慢。。。。

pushState、replaceState:改變網(wǎng)址(存在跨域限制)而不刷新頁面

pushState:向瀏覽器歷史添加了一個狀態(tài)(增加一個記錄)

replaceState:把當(dāng)前的頁面的歷史記錄替換掉

防止事件多次觸發(fā),建議使用閉包。表單提交使用flag加鎖

節(jié)流:throttle 無論點擊多少次都只在固定間隔執(zhí)行一次

閉包:保證私有變量不被修改和污染,與static類似

實例對象一旦創(chuàng)建,將自動引用prototype對象的屬性和方法.

"!!"將表達(dá)式進(jìn)行強制轉(zhuǎn)化為bool值的運算,運算結(jié)果為true或者false。

const aa = 'xx';

const bb = !!aa; // bb輸出為true

const cc = !!(NaN || undefined || null || 0 || '' ); // cc為false;

\\表轉(zhuǎn)義

\\\\表’\‘

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容