原创 WebGL(二)繪製簡單的圖形

本節代碼在鏈接的ch03文件夾 HelloTriangle.js // HelloTriangle.js (c) 2012 matsuda // Vertex shader program var VSHADER_SOURCE =

原创 某條前端面試題--實現一個封裝的ajax器(Promise版)

題目描述 實現一個封裝ajax器,功能有 限制一次同時發送的ajax請求數量m個 timeout限制 重試n次 前置知識 XMLHttpRequest XMLHttpRequest(XHR)對象用於與服務器交互。通過 XML

原创 WebGL(三)學會貼紋理

本節代碼在鏈接的ch05文件夾 MultiTexture.js(貼了兩張紋理) 重點在片元着色器,還有loadTexture函數 // MultiTexture.js (c) 2012 matsuda and kanda // V

原创 爲什麼需要知道JavaScript的Number類型的精度問題

JavaScript的Number類型在我們平時寫腳本的時候隨處可見,但是因爲前端對精度的要求不高,雖然不常見,但是有時也會碰到0.1+0.2!=0.3的情況,如果你不瞭解Number,可能就需要浪費很久事件去找bug。什麼你沒遇

原创 angular攔截器的使用(緩存)

好久沒登錄CDSN的賬號,居然有人給我點贊,還有人關注我了,哈哈,無名之輩的開心就是這麼簡單,謝謝(๑╹◡╹)ノ""" 什麼是攔截器 迴歸今天的主題, 我建議大家主要是去看官方文檔的攔截請求和響應,跳到頂部,可以下載官方例子源碼的

原创 二維圖形的變換(矩陣形式)

變化圖形就是變化圖形的幾何關係,即改變頂點的座標,同時保持圖形的原拓撲關係不變(即用結點、弧段和多邊形所表示的實體之間的鄰接、關聯、包含和連通關係不變。如:點與點的鄰接關係、點與面的包含關係、線與面的相離關係、面與面的重合關係等

原创 第三方cookie是如何窺視你的?

最近,關於 Cookie,發生了 Chrome80 屏蔽第三方 Cookie 的事件。第三方cookie會被屏蔽,除了CSRF攻擊,還有就是泄露用戶隱私,導致被跟蹤。舉個例子,你在百度如何防止脫髮,看CDSN是側邊就會有個脫髮廣告

原创 前端筆試坑位---JS隱式轉換

我們在寫筆試題的時候,經常碰到涉及隱式轉換的題目,例如 "1" + 2 obj + 1 [] == ![] [null] == false === 和 == === 叫做嚴格運算符,對象類型指向地址相同或原始類型( 數值、字符

原创 ThreeJS(WebGL)如何使用UV座標貼圖,實現UV旋轉偏移?

ThreeJS是WebGL的一種前端框架,UV座標的原理是一樣的。 前置知識 WebGL紋理 如果對WebGL有興趣,可以去看WebGL貼材質這篇文章簡單瞭解下。 紋理座標系統 uv其實就是紋理座標,因爲xyz已經被頂點座標佔用了

原创 100行以內的代碼實現一個Promise

Promise實現的基石就是,先了解Promises/A+規範,我按照自己的理解簡單描述下。 Promise規範 術語: 解決(fulfill):指一個 promise 成功時進行的一系列操作,如狀態的改變、回調的執行。雖然規範

原创 點積和叉積在計算機圖形學的應用

點積和叉積在計算機圖形學中,是最爲基礎且重要的概念,初學者弄清它的概念的應用,是很重要的。最後一節,是爲了加強理解記錄,如果不看也是可以的,大家選擇觀看,有興趣可以去看原視頻,結合我的筆記。 前置知識 列向量 以下均採用列向量

原创 Angular的動態組件

這是官網動態組件的講解,我不知道你們是什麼感覺,反正我當初作爲一個初學者,是沒怎麼看懂,一個頭兩個大,也是難怪Angular不如Vue火,實在是容易勸退啊。 使用場景 我們先明確下動態組件的使用場景,在代碼運行時要動態加載組件,換

原创 數據結構----平衡二叉樹的JS實現

在高效的檢索方法中, 二分檢索法具有最高的查找效率,但是它只適合於順序存儲結構,這樣對於數據的操作和刪除操作帶來不便。 二叉排序樹不僅有二分檢索的效率,同時保持數據的動態性。但是當二叉排序樹只有左子樹或者右子樹,二叉排序樹就退化成

原创 某條前端面試題--實現一個封裝的ajax器

題目描述 實現一個封裝ajax器,功能有 限制一次同時發送的ajax請求數量m個 timeout限制 重試n次 解題思路 強調下,我的想法和代碼只是嘗試回答面試問題,並不能直接在正式的業務場景裏使用,但希望也能給你們帶去思考

原创 扒一扒爲啥面試官要問我們隱藏元素有幾種方法

也許,你們在面試的時候,被問到過,隱藏元素有幾種方法? 我總結了一下,不保證全面,有下列幾種方法: visibility: hidden; 這個屬性只是簡單的隱藏某個元素,但是元素佔用的空間任然存在 opacity: 0; CS