面试题:['1', '2', '3'].map(parseInt) 输出什么?
一、背景 事情经过是这样的,前几天上班路上,跟往常一样拿起手机看头条、逛知乎、刷掘金嘛。 过程中,看到以下这个面试题:['1', '2', '3'].map(par…
似乎没有真正理解 try...catch...finally
写了那么久的 JavaScript,似乎真的没有很认真地去了解 try...catch...finally 的各种用法,真是惭愧了!Anyway,不懂就学。 一、错误与异常 错误,…
案例研究:在 Entanglement 游戏中 HTML5 Canvas 的使用
今年春天(2010年),我对 HTML5 和相关技术的快速增长的支持产生了兴趣。当时,我和一位朋友在为期两周的游戏开发竞赛中互相挑战,以磨练我们的编程…
案例研究:在 Chrome 中拖拽下载
拖放(DnD)是 HTML 5 的众多强大功能之一,Firefox 3.5,Safari,Chrome 和 IE 都支持它。谷歌最近推出了一项 新功能 ,允许谷歌浏览器用户将文件从…
细读 JS | XSS、CSRF 浅谈
一、前提 Cookie 常用于会话状态管理、个性化设置等。 在浏览器可以通过 document.cookie 来访问 Cookie document.cookie 只能获取当前作用域下的 Co…
细读 ES6 | 模板字符串进阶用法
模板字符串(template string)是 ECMAScript 2015 规范中的一种新特性,在平常开发中使用频率非常高。也可称作模板字面量(template literal)。 常…
为什么用 void 0 代替 undefined?
众所周知,void 运算符总会返回一个 undefined 的结果。那么,为什么要用 void 0 代替 undefined 呢?这不是多此一举了吗? 一、void 运算符 语法非…
细读 JS | JavaScript 模块化之路
学习不能停,都给我卷起来... 一、前世今生 在 ES6 之前,JavaScript 一直没有官方的模块(Module)体系,对于开发大型、复杂的项目形成了巨大的障碍…
初试 Yarn Workspaces
Usage 查看 workspaces # 查看 Workspace 信息 $ yarn workspaces info 执行脚本命令 # 在某个 workspace 中执行脚本命令 $ yarn workspace # 在所有…
JavaScript 变量不能被 delete 的原因
请记住:任何时候,变量只能通过使用 var、let、const 关键字才能被声明。 我们都知道, 无论在全局上下文,还是其他任何上下文中,都可以通过省略变…