Please enable JavaScript.
Coggle requires JavaScript to display documents.
Web網頁 (Javascript (ES6 (let const, ()=>{}, function(a=10){}, for .. of,…
Web網頁
Javascript
跨域請求
CORS
JSONP
協定不同 or 端口不同 or 主機不同
iframe
windows.name
document.domain
XMLHttpRequest(XHR)
AJAX
fetch
變量提升
var 變數的宣告會提前在頂部執行,需小心作用域下的同名變數
let、const 的宣告並不會提升
delete
刪除成功、刪除到 undefined 屬性,回傳 true
eval
if 使用 eval 求值
回傳最後一個述句的回傳值
接受字串當參數,使用物件的話直接轉回傳
會將引數當成一個 statement,所以 eval('{a:123}') 會回傳 123而不是一個物件,因為{}被當成 scope
直接調用會參照區域作用域,間接調用會參照全域
[]+{} 與 {}+[]
需清楚 expression 與 statement 差異
valueOf 與 toString
先調用 valueOf ,沒有則調用 toString
localStorage 與 sessionStorage
localStorage 長期保留
sessionStorage 在瀏覽器關閉時銷毀
(0,eval(''))
執行 2 個述句 0 & eval ,並回傳 eval 回傳值
instanceof
判斷是否整數
parseInt(a) === a
a % 1 === 0
IIFEs 立即執行表達式
ES6
let const
()=>{}
function(a=10){}
for .. of
{ ...obj }
Promise
export import
undefined 與 not defined
this
在 JavaScript 中,this 总是指向函数的 “拥有者”(也就是指向该函数的对象),或则拥有该函数的对象。
基本類別的擴充
String.prototype.getAAA = ()=>{return 'AAA'}
hoisting 提升
變量提升
函數提升
Number.parseFloat().toFixed
閉包 closure
函式
函式環境
var a = b = 3; a 與 b 作用域不同,a 在區域,b 在全域
CSS
background-size
auto
length
percentage
cover
contain
box model
width
border
padding(裡面邊界)
margin(整個邊界)
display
block
inline-block
inline
flex
border
double(雙線)
groove(凹槽)
solid(固體)
position
fixed
relactive
absolute
animation
@keyframes
infinite
alternate
box sizing
content-box
border-box
cursor
default
none
float
clear
margin
auto
flex
flex-wrap
text-decoration(底線)
none
text-align
center
text-decoration
width
line-height
vertical-align
opacity
padding-top
max-width
transition
Html
fakeimg
em
strong
span
nav
CSS Reset
CSS Normalize