理解 call + bind

JavaScript 提供了 call、apply、bind 等三个方法,来切换/固定函数调用时其内部 this 的指向。它们的第一个参数都是函数内 this 所要指向的对象,如果该参数设为 null 或 undefined,则指向全局对象(浏览器环境下,指 window)。这三个方法的基本用法在 理解 JavaScript 中 this 一文已经做了介绍,这里就不再赘述。下面更深入地讨论一下 call 和 bind 方法。

More

几个典型的 JavaScript 函数

ECMAScript 中,没有独立存在的函数,所有的函数都是依附于某个对象。isNaN()、parseInt() 等看起来独立的函数,实际上它们都属于全局对象。客户端 JavaScript 中,全局对象就是 window 对象。讲函数之前,先来说说 JavaScript 对象。

More

JavaScript 变量

JavaScript 变量分为两种:【基本类型】和【引用类型】。6 种数据类型里,除了对象是引用类型变量,其他的都是基本类型变量。引用类型的变量由多个值构成。当然了,每种基本类型(null 和 undefined 除外)都有与其对应的引用类型,在必要时候,基本类型变量也会自动转换成对应引用类型变量,然后再继续运算。

More

JavaScript 数据类型

JavaScript 数据类型共有 6 种(es6 又新增第 7 种 symbol):数值(number)、字符串(string)、布尔值(boolean)、null、undefined、对象(object)。对象又可以分为 3 个子类型:狭义的对象(object)、数组(array)、函数(function)。

More

CSRF 攻击原理

CSRF : 跨站请求伪造(Cross Site Request Forgery)。攻击者冒充用户身份,以用户的名义做出各种操作,而这些操作用户未必知道和愿意做。比如,以用户的名义登录注销、发送消息、购买商品……

More

XSS 攻击原理

XSS :跨站脚本攻击(Cross Site Scripting)。为了区别于层叠样式表(Cascading Style Sheet)的缩写 CSS,一般将其缩写为 XSS。XSS 针对一种 web 安全漏洞,该漏洞允许攻击者将恶意脚本注入到用户接收到的网页中,以完成某种不利于用户的操作。

More