一次搞定 Unicode、字节序、UTF-*

2020-11-14
阅读 13 分钟
4.9k
前置阅读:Unicode 与 JavaScript 详解字符编码笔记:ASCII,Unicode 和 UTF-8谈谈Unicode编码How to teach endianThe Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)什么是字符集顾名思义,字符集就是字符的集合 。什么是 ASCIIASCII ((...

高能!typeof Function.prototype 引发的先有 Function 还是先有 Object 的探讨

2016-06-19
阅读 10 分钟
6.9k
来个摸底测试,说出以下每个表达式的结果 {代码...} {代码...} 看到这里相信有不少入门不久的同学已经产生疑惑了 是真的吗 然后在浏览器试过一番发现真是如此。 解开疑惑之前先回顾些大家都知道的知识点: 引用 MDN 关于 对象实例和对象原型对象 的阐述: JavaScript语言的所有对象都是由Object衍生的对象;所有对象都继...

浅谈 JS 对象之扩展、密封及冻结三大特性

2015-10-22
阅读 10 分钟
26.1k
扩展特性 Object.isExtensible 方法 Object.preventExtensions 方法 密封特性 Object.isSealed 方法 Object.seal 方法 冻结特性 Object.isFrozen 方法 Object.freeze 方法 浅冻结 与 深冻结 扩展特性 如果一个对象可以添加新的属性,则这个对象是可扩展的。让这个对象变的不可扩展,也就是不能再有新的属性 我们都知道,...

浅谈 JS 对象添加 getter与 setter 的5种方法以及如何让对象属性不可配置或枚举

2015-10-20
阅读 10 分钟
46.3k
定义 getter 与 setter 通过对象初始化器定义 使用 Object.create 方法 使用 Object.defineProperty 方法 使用 Object.defineProperties 方法 使用 Object.prototype.__defineGetter__ 以及 Object.prototype.__defineSetter__ 方法 什么是属性描述符 创建属性不可配置不可枚举的对象 Enumerable 特性 Configurable 特新...

浅谈 JS 创建对象的 8 种模式

2015-10-15
阅读 6 分钟
17.1k
Objct 模式 工厂模式 构造器模式 通过 Function 对象实现 prototype 模式 构造器与原型方式的混合模式 动态原型模式 混合工厂模式 1.Object 模式 {代码...} 在 chrome 里查看各个新建对象的区别: 可以看出前6种模式创建出来的对象都是一样的,第七种不同点在于其虽然也为 Object 对象但其无任何属性(包括没有任何可以继承...

浅谈在JS中使用Object的watch方法监控对象属性

2015-10-13
阅读 2 分钟
12.3k
可以看到这两个方法是只针对 Gecko 内核的浏览器使用的(FF 是使用的 Gecko 内核).wacth 方法有两个参数,第一个参数是一个字符串,代表需要监视的属性名,第二个参数是个回调函数unwatch 方法只有一个参数,代表需要取消监视的属性名.

浅谈细说 JS 函数(call,apply,重载)

2015-10-12
阅读 4 分钟
5.8k
什么是函数? {代码...} 声明函数的几种方式 调用函数的几种方式 重载函数的实现 函数的独立性 声明函数 {代码...} 调用函数基本方法 {代码...} 调用函数的高级方法 {代码...} 输出结果: 这里方法一大家不言而喻,简单明了,直接就是声明了一个函数,需要指出的是,默认写的函数在不依附其他对象的情况下均为全局函数,即成为...

用9种办法解决 JS 闭包经典面试题之 for 循环取 i

2015-10-04
阅读 6 分钟
38.4k
正确的说,应该是指一个闭包域,每当声明了一个函数,它就产生了一个闭包域(可以解释为每个函数都有自己的函数栈),每个闭包域(Function 对象)都有一个 function scope(不是属性),function scope内默认有个名为 Global 的全局引用(有了这个引用,就可以直接调用 Global 的属性或方法)