最终,我们可以获得如下的 JavaScript 原始类型转换表(包含复合类型向原始类型转换典范例):
JavaScript 中我们常说的原始类型包含了数值类型、字符串类型、布尔类型与空类型这几种;而我们常用的原始类型之间的转换函数就是 String、Number 与 Boolean:
比较运算
在比较运算与加法运算中,都邑涉及到将运算符两侧的操尴尬刁难象转化为原始对象的步调;而 JavaScript 中这种转化实际上都是由 ToPrimitive 函数履行的。实际上,当某个对象涌如今了须要原始类型才能进行操作的高低文时,JavaScript 会主动调用 ToPrimitive 函数将对象转化为原始类型;譬如上文介绍的 alert 函数、数学运算符、作为对象的键都是典范场景,该函数的签名如下:
- ToPrimitive(input, PreferredType?)
- var ToPrimitive = function(obj,preferredType){
- var APIs = {
- typeOf: function(obj){
- return Object.prototype.toString.call(obj).slice(8,-1);
- },
- isPrimitive: function(obj){
- var _this = this,
- types = ['Null','Undefined','String','Boolean','Number'];
- return types.indexOf(_this.typeOf(obj)) !== -1;
- }
- };
- // 如不雅 obj 本身已经是原始对象,则直接返回
- if(APIs.isPrimitive(obj)) {return obj;}
- // 对于 Date 类型,会优先应用其 toString 办法;不然优先应用 valueOf 办法
- preferredType = (preferredType === 'String' || APIs.typeOf(obj) ===
推荐阅读
《CIO修炼之道》第 4 讲制造业企业的核心竞争力表如今产品和办事上,展如今客户面前的竞争力就是“性价比高,交货快!”,这“一高、一快”是互相接洽关系的。比如,采取提前备货、扩大年夜产能等>>>详细阅读
地址:http://www.17bianji.com/lsqh/37165.html
1/2 1