原创 我的THREE.js之旅01

教材:Three.js開發指南 第一章 <!DOCTYPE html> <html> <head>     <title>example 01.01</title>     <script type="text/javascript" s

原创 css3 a標籤效果

在https://tympanus.net/Development/CreativeLinkEffects/#cl-effect-5看到一些不錯的標籤hover效果,自己試着實現了幾個(本人菜鳥一枚) 預覽 主要使用::after、:

原创 node.js POST流程

本人菜鳥,最近看nodejs,將post理解成這樣了,利用http中request收集post數據塊,end後回掉到路由,再由路由將data傳給具體函數處理。 求指教。

原创 Number.MAX_SAFE_INTEGER與Number.MAX_VALUE

Number.MAX_SAFE_INTEGER 9007199254740991,小於該值能精確表示 Number.MAX_VALUE 1.7976931348623157e+308,大於該值得到的是Infinity,介於Infini

原创 給定入棧順序求所有出棧可能性

以前很少接觸算法,沒有遇到過這種問題,但是,在做美團、CVTE的前端筆試題時,都遇到過這種智力題: 根據規律求括號中的數: 1,1,2,5,14,() 我怎麼知道這個規律會是: -_-||(看來我基礎確實不好) 所以連續懵逼兩次,後來再

原创 模擬實現Promise

最近複習了一下Promise,決定自己實現一下,加深對Promise流程的理解。當然,這個模擬還不是很完善,比如把events放在了原型上,這個會導

原创 Mac添加環境變量,解決command not found

安裝NW後發現nwjs命令還用不了,沒這個命令: 解決辦法: * 臨時添加環境變量 直接在終端中輸入export PATH=該命令所在文件路徑 ,只要不退出這個終端就能臨時使用該命令: export PATH=/Applic

原创 使用 async await + setTimeout 分割 while 循環

由於JavaScript單線程的特性,在執行CPU密集型任務時(如大數組排序)會阻塞網頁的渲染,解決辦法一般是使用setTimeout函數對任務進行分割,或者把這類任務交由 web worker 處理。今天遇到一個對大數組排序的問

原创 JavaScript模擬函數重載

在Java等語言裏面實現函數的重載是比較簡單的,參數數量不同就能實現同名函數的重載,而JavaScript中的參數本質上還是arguments這個類數組的引用,不能直接更具參數數量的不同而達到重載,這裏使用的閉包實現函數重載:一層一層去尋

原创 關於document的三個方法:open、write、close

document.open會打開一個新文檔,清除已加載的文檔;document.write在HTML加載後調用會導致open方法調用一次;document.close會關閉打開的文檔。 直接看代碼和效果圖: <!DOCTYPE h

原创 JavaScript數據結構之 二叉排序樹

/** * 二叉排序樹(Binary Sort Tree)又稱二叉查找樹(Binary Search Tree),亦稱二叉搜索樹。 * 左邊子節點的值 < 父節點的值 < 右邊子節點的值 * 包括的方法有:插入、遍歷、查詢、查詢父節

原创 javascript類與繼承

"父類" function Foo(name){ this.name = name; } Foo.prototype.myName = function(){ return

原创 javascript中對象連等問題 ==

看到一篇有意思的博客,記錄下其中的兩個例子var a = {n: 1}; a.x = a = {n: 2}; console.log(a.x);//

原创 d3.js 創建散點圖

最近學d3,對着書中的例子敲了一遍 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>散點圖</title> <script src="d3/

原创 CSS3選擇器

在新窗口中打開圖片會比較清晰