- Number.prototype.toFixed
返回值是String類型
在給React組件傳prop的時(shí)候,對(duì)一個(gè)浮點(diǎn)數(shù)使用 toFixed 取小數(shù)點(diǎn)0位.傳遞后React PropType驗(yàn)證報(bào)錯(cuò)傳遞的是String。MDN查了之后才發(fā)現(xiàn)返回值是String類型,不是期待的Number
see@https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toFixed
on + 'event' 和 addEventListener
話說(shuō)寫了這么久前端,也沒(méi)有區(qū)分出這兩種事件綁定的區(qū)別。
總結(jié)來(lái)說(shuō)就是onclick僅能綁定一個(gè)事件處理器,而addEventListener能夠綁定多個(gè)事件處理器。+加號(hào)操作符
我們熟知+號(hào)操作符可以用于
- 數(shù)值計(jì)算 1+1
- 拼接字符串 'a' + 'b'
神奇的JavaScript語(yǔ)言中的+號(hào)還可以用于類型轉(zhuǎn)換。用于將任何類型的數(shù)據(jù)轉(zhuǎn)換成Number.
4.Notification API
本想寫一個(gè)Notification自定義控件
function Notification() {}
Notification.prototype = {}
當(dāng)我調(diào)用自定義Notification上的方法的時(shí)候發(fā)現(xiàn)is not a function;
原來(lái)Notification是w3c的標(biāo)準(zhǔn)API
see@https://developer.mozilla.org/en-US/docs/Web/API/notification
就是騰訊視頻,teambition等一些網(wǎng)站用過(guò)的瀏覽器通知彈窗。
所以我應(yīng)該將自定義的Notification改成notification。
這也是為什么antd將Notification改為notification的原因了。
5.模擬事件
某天遇到一個(gè)需要模擬一個(gè)input文件上傳的需求,之前是沒(méi)有接觸過(guò)模擬事件的。
Google一下。
see@http://www.cnblogs.com/snandy/archive/2011/08/02/2122496.html
判斷元素是否有click屬性,一般只有input和button有click方法,如果沒(méi)有,就自己創(chuàng)建事件來(lái)模擬。
see@https://developer.mozilla.org/en-US/docs/Web/API/Document/createEvent
var event = document.createEvent('Event');
event.initEvent('click',true,true);
el.dispatchEvent(event);