Object 对象

javascript学习——Object 对象的相关方法 JavaScript 在Object对象上面,提供了很多相关方法,处理面向对象编程的相关操作。本章介绍这些方法。 阅读详情

原文地址:https://wangdoc.com/javascript/stdlib/object.html

概述

JavaScript 原生提供Object对象(注意起首的O是大写),本章介绍该对象原生的各种方法。

JavaScript 的所有其他对象都继承自Object对象,即那些对象都是Object的实例。

Object对象的原生方法分成两类:Object本身的方法与Object的实例方法。

(1)Object对象本身的方法

所谓“本身的方法”就是直接定义在Object对象的方法。

Object.print = function (o) { console.log(o) };

上面代码中,print方法就是直接定义在Object对象上。

(2)Object的实例方法

所谓实例方法就是定义在Object原型对象Object.prototype上的方法。它可以被Object实例直接使用。

Object.prototype.print = function () {
  console.log(this);
};

var obj = new Object();
obj.print() // Object

上面代码中,Object.prototype定义了一个print方法,然后生成一个Object的实例obj。obj直接继承了Object.prototype的属性和方法,可以直接使用obj.print调用print方法。也就是说,obj对象的print方法实质上就是调用Object.prototype.print方法。

关于原型对象object.prototype的详细解释,参见《面向对象编程》章节。这里只要知道,凡是定义在Object.prototype对象上面的属性和方法,将被所有实例对象共享就可以了。

以下先介绍Object作为函数的用法,然后再介绍Object对象的原生方法,分成对象自身的方法(又称为“静态方法”)和实例方法两部分。

Object()

Object本身是一个函数,可以当作工具方法使用,将任意值转为对象。这个方法常用于保证某个值一定是对象。

如果参数为空(或者为undefined和null),Object()返回一个空对象。

var obj = Object();
// 等同于
var obj = Object(undefined);
var obj = Object(null);

obj instanceof Object // true

上面代码的含义,是将undefined和null转为对象,结果得到了一个空对象obj。

instanceof运算符用来验证,一个对象是否为指定的构造函数的实例。obj instanceof Object返回true,就表示obj对象是Object的实例。

如果参数是原始类型的值,Object方法将其转为对应的包装对象的实例(参见《原始类型的包装对象》一章)。

var obj = Object(1);
obj instanceof Object // true
obj instanceof Number // true

var obj = Object('foo');
obj instanceof Object // true
obj instanceof String // true

var obj = Object(true);
obj instanceof Object // true
obj instanceof Boolean // true

上面代码中,Object函数的参数是各种原始类型的值,转换成对象就是原始类型值对应的包装对象。

如果Object方法的参数是一个对象,它总是返回该对象,即不用转换。

var arr = [];
var obj = Object(arr); // 返回原数组
obj === arr // true

var value = {};
var obj = Object(value) // 返回原对象
obj === value // true

var fn = function () {};
var obj = Object(fn); // 返回原函数
obj === fn // true

利用这一点,可以写一个判断变量是否为对象的函数。  

function isObject(value) {
  return value === Object(value);
}

isObject([]) // true
isObject(true) // false

Object 构造函数

Object不仅可以当作工具函数使用,还可以当作构造函数使用,即前面可以使用new命令。

Object构造函数的首要用途,是直接通过它来生成新对象。

var obj = new Object();

注意,通过var obj = new Object()的写法生成新对象,与字面量的写法var obj = {}是等价的。或者说,后者只是前者的一种简便写法。

Object构造函数的用法与工具方法很相似,几乎一模一样。使用时,可以接受一个参数,如果该参数是一个对象,则直接返回这个对象;如果是一个原始类型的值,则返回该值对应的包装对象(详见《包装对象》一章)。

var o1 = {a: 1};
var o2 = new Object(o1);
o1 === o2 // true

var obj = new Object(123);
obj instanceof Number // true

虽然用法相似,但是Object(value)与new Object(value)两者的语义是不同的,Object(value)表示将value转成一个对象,new Object(value)则表示新生成一个对象,它的值是value。

Object 的静态方法

所谓“静态方法”,是指部署在Object对象自身的方法。

Object.keys(),Object.getOwnPropertyNames()

Object.keys方法和Object.getOwnPropertyNames方法都用来遍历对象的属性。

Object.keys方法的参数是一个对象,返回一个数组。该数组的成员都是该对象自身的(而不是继承的)所有属性名。

var obj = {
  p1: 123,
  p2: 456
};

Object.keys(obj) // ["p1", "p2"]

Object.getOwnPropertyNames方法与Object.keys类似,也是接受一个对象作为参数,返回一个数组,包含了该对象自身的所有属性名。

var obj = {
  p1: 123,
  p2: 456
};

Object.getOwnPropertyNames(obj) // ["p1", "p2"]

对于一般的对象来说,Object.keys()和Object.getOwnPropertyNames()返回的结果是一样的。只有涉及不可枚举属性时,才会有不一样的结果。Object.keys方法只返回可枚举的属性(详见《对象属性的描述对象》一章),Object.getOwnPropertyNames方法还返回不可枚举的属性名。

var a = ['Hello', 'World'];

Object.keys(a) // ["0", "1"]
Object.getOwnPropertyNames(a) // ["0", "1", "length"]

上面代码中,数组的length属性是不可枚举的属性,所以只出现在Object.getOwnPropertyNames方法的返回结果中。

由于 JavaScript 没有提供计算对象属性个数的方法,所以可以用这两个方法代替。

var obj = {
  p1: 123,
  p2: 456
};

Object.keys(obj).length // 2
Object.getOwnPropertyNames(obj).length // 2

一般情况下,几乎总是使用Object.keys方法,遍历对象的属性。

其他方法

除了上面提到的两个方法,Object还有不少其他静态方法,将在后文逐一详细介绍。

(1)对象属性模型的相关方法

  • Object.getOwnPropertyDescriptor():获取某个属性的描述对象。
  • Object.defineProperty():通过描述对象,定义某个属性。
  • Object.defineProperties():通过描述对象,定义多个属性。

(2)控制对象状态的方法

  • Object.preventExtensions():防止对象扩展。
  • Object.isExtensible():判断对象是否可扩展。
  • Object.seal():禁止对象配置。
  • Object.isSealed():判断一个对象是否可配置。
  • Object.freeze():冻结一个对象。
  • Object.isFrozen():判断一个对象是否被冻结。

(3)原型链相关方法

  • Object.create():该方法可以指定原型对象和属性,返回一个新的对象。
  • Object.getPrototypeOf():获取对象的Prototype对象
  • Object 的实例方法

    除了静态方法,还有不少方法定义在Object.prototype对象。它们称为实例方法,所有Object的实例对象都继承了这些方法。

    Object实例对象的方法,主要有以下六个。

  • Object.prototype.valueOf():返回当前对象对应的值。
  • Object.prototype.toString():返回当前对象对应的字符串形式。
  • Object.prototype.toLocaleString():返回当前对象对应的本地字符串形式。
  • Object.prototype.hasOwnProperty():判断某个属性是否为当前对象自身的属性,还是继承自原型对象的属性。
  • Object.prototype.isPrototypeOf():判断当前对象是否为另一个对象的原型。
  • Object.prototype.propertyIsEnumerable():判断某个属性是否可枚举。
  • 本节介绍前四个方法,另外两个方法将在后文相关章节介绍。

    Object.prototype.valueOf()

    valueOf方法的作用是返回一个对象的“值”,默认情况下返回对象本身。

    var obj = new Object();
    obj.valueOf() === obj // true
    

    上面代码比较obj.valueOf()与obj本身,两者是一样的。

    valueOf方法的主要用途是,JavaScript 自动类型转换时会默认调用这个方法(详见《数据类型转换》一章)。

    var obj = new Object();
    1 + obj // "1[object Object]"
    

    上面代码将对象obj与数字1相加,这时 JavaScript 就会默认调用valueOf()方法,求出obj的值再与1相加。所以,如果自定义valueOf方法,就可以得到想要的结果。

    var obj = new Object();
    obj.valueOf = function () {
      return 2;
    };
    
    1 + obj // 3
    

    上面代码自定义了obj对象的valueOf方法,于是1 + obj就得到了3。这种方法就相当于用自定义的obj.valueOf,覆盖Object.prototype.valueOf。

    Object.prototype.toString()

    toString方法的作用是返回一个对象的字符串形式,默认情况下返回类型字符串。

    var o1 = new Object();
    o1.toString() // "[object Object]"
    
    var o2 = {a:1};
    o2.toString() // "[object Object]"
    

    上面代码表示,对于一个对象调用toString方法,会返回字符串[object Object],该字符串说明对象的类型。

    字符串[object Object]本身没有太大的用处,但是通过自定义toString方法,可以让对象在自动类型转换时,得到想要的字符串形式。

    var obj = new Object();
    
    obj.toString = function () {
      return 'hello';
    };
    
    obj + ' ' + 'world' // "hello world"
    

    上面代码表示,当对象用于字符串加法时,会自动调用toString方法。由于自定义了toString方法,所以返回字符串hello world。

    数组、字符串、函数、Date 对象都分别部署了自定义的toString方法,覆盖了Object.prototype.toString方法。

    [1, 2, 3].toString() // "1,2,3"
    
    '123'.toString() // "123"
    
    (function () {
      return 123;
    }).toString()
    // "function () {
    //   return 123;
    // }"
    
    (new Date()).toString()
    // "Tue May 10 2016 09:11:31 GMT+0800 (CST)"
    

    上面代码中,数组、字符串、函数、Date 对象调用toString方法,并不会返回[object Object],因为它们都自定义了toString方法,覆盖原始方法。

    toString() 的应用:判断数据类型

    Object.prototype.toString方法返回对象的类型字符串,因此可以用来判断一个值的类型。

    var obj = {};
    obj.toString() // "[object Object]"
    

    上面代码调用空对象的toString方法,结果返回一个字符串object Object,其中第二个Object表示该值的构造函数。这是一个十分有用的判断数据类型的方法。

    由于实例对象可能会自定义toString方法,覆盖掉Object.prototype.toString方法,所以为了得到类型字符串,最好直接使用Object.prototype.toString方法。通过函数的call方法,可以在任意值上调用这个方法,帮助我们判断这个值的类型。

    Object.prototype.toString.call(value)
    

    上面代码表示对value这个值调用Object.prototype.toString方法。

    不同数据类型的Object.prototype.toString方法返回值如下。

  • 数值:返回[object Number]。
  • 字符串:返回[object String]。
  • 布尔值:返回[object Boolean]。
  • undefined:返回[object Undefined]。
  • null:返回[object Null]。
  • 数组:返回[object Array]。
  • arguments 对象:返回[object Arguments]。
  • 函数:返回[object Function]。
  • Error 对象:返回[object Error]。
  • Date 对象:返回[object Date]。
  • RegExp 对象:返回[object RegExp]。
  • 其他对象:返回[object Object]。
  • 这就是说,Object.prototype.toString可以看出一个值到底是什么类型。

    Object.prototype.toString.call(2) // "[object Number]"
    Object.prototype.toString.call('') // "[object String]"
    Object.prototype.toString.call(true) // "[object Boolean]"
    Object.prototype.toString.call(undefined) // "[object Undefined]"
    Object.prototype.toString.call(null) // "[object Null]"
    Object.prototype.toString.call(Math) // "[object Math]"
    Object.prototype.toString.call({}) // "[object Object]"
    Object.prototype.toString.call([]) // "[object Array]"
    

    利用这个特性,可以写出一个比typeof运算符更准确的类型判断函数。

    var type = function (o){
      var s = Object.prototype.toString.call(o);
      return s.match(/\[object (.*?)\]/)[1].toLowerCase();
    };
    
    type({}); // "object"
    type([]); // "array"
    type(5); // "number"
    type(null); // "null"
    type(); // "undefined"
    type(/abcd/); // "regex"
    type(new Date()); // "date"
    

    在上面这个type函数的基础上,还可以加上专门判断某种类型数据的方法。

    var type = function (o){
      var s = Object.prototype.toString.call(o);
      return s.match(/\[object (.*?)\]/)[1].toLowerCase();
    };
    
    ['Null',
     'Undefined',
     'Object',
     'Array',
     'String',
     'Number',
     'Boolean',
     'Function',
     'RegExp'
    ].forEach(function (t) {
      type['is' + t] = function (o) {
        return type(o) === t.toLowerCase();
      };
    });
    
    type.isObject({}) // true
    type.isNumber(NaN) // true
    type.isRegExp(/abc/) // true
    

    Object.prototype.toLocaleString()

    Object.prototype.toLocaleString方法与toString的返回结果相同,也是返回一个值的字符串形式。

    var obj = {};
    obj.toString(obj) // "[object Object]"
    obj.toLocaleString(obj) // "[object Object]"
    

    这个方法的主要作用是留出一个接口,让各种不同的对象实现自己版本的toLocaleString,用来返回针对某些地域的特定的值。

    var person = {
      toString: function () {
        return 'Henry Norman Bethune';
      },
      toLocaleString: function () {
        return '白求恩';
      }
    };
    
    person.toString() // Henry Norman Bethune
    person.toLocaleString() // 白求恩
    

    上面代码中,toString()方法返回对象的一般字符串形式,toLocaleString()方法返回本地的字符串形式。

    目前,主要有三个对象自定义了toLocaleString方法。

  • Array.prototype.toLocaleString()
  • Number.prototype.toLocaleString()
  • Date.prototype.toLocaleString()
  • 举例来说,日期的实例对象的toString和toLocaleString返回值就不一样,而且toLocaleString的返回值跟用户设定的所在地域相关。

    var date = new Date();
    date.toString() // "Tue Jan 01 2018 12:01:33 GMT+0800 (CST)"
    date.toLocaleString() // "1/01/2018, 12:01:33 PM"
    

    Object.prototype.hasOwnProperty()

    Object.prototype.hasOwnProperty方法接受一个字符串作为参数,返回一个布尔值,表示该实例对象自身是否具有该属性。

    var obj = {
      p: 123
    };
    
    obj.hasOwnProperty('p') // true
    obj.hasOwnProperty('toString') // false
    

    上面代码中,对象obj自身具有p属性,所以返回true。toString属性是继承的,所以返回false

JavaScript标准内置对象Object的Api JavaScript标准内置对象Object的Api。 阅读详情

相关推荐

别急着让AI画板!聊聊Cadence Allegro X AI和OrCAD X在实际PCB项目中的真实体验

本文分享了Cadence Allegro X AI与OrCAD X在PCB设计中的实际应用体验,探讨了AI辅助Layout的效率提升与潜在陷阱。通过高速ADC采集板案例,详细对比了AI与传统方法在电源平面分割、低速信号布线等任务中的表现,并总结了人机协作的最佳实践,为工程师提供实用参考。

weixin_30836759的博客 2202

对象的 valueOf 方法

对象的 valueOf 方法 Object.prototype.valueOf() 该方法返回指定对象的原始值,若对象没有原始值,则将返回对象本身。通常由 JavaScript 内部调用,而不是在代码中显式调用。当遇到需要使用预期的原始值的对象时(比如对象的强制类型转换),JavaScript 会自动调用它。 不同类型对象的 valueOf() 方法的返回值 对象 返回值 Number 数字的基本类型值 Boolean 基本类型布尔值 String 基本类型字符串 RegExp

yanzi_0216的博客 1456

新手DIY无人机,从电机到飞控,这份配件清单和避坑指南请收好

本文为无人机DIY新手提供从电机到飞控的完整配件清单和避坑指南。详细解析电机KV值选择、电调匹配、飞控系统调试等核心问题,帮助初学者避开常见雷区,顺利完成首飞。特别推荐FPV竞速机和航拍机的配件组合方案,并附赠实用调试命令和故障排查表。

weixin_27032989的博客 236

JS一些特殊知识点(五)

Object()Object本身是一个函数,可以当作工具方法使用,将任意值转为对象。这个方法常用于保证某个值一定是对象。如果参数为空(或者为undefined和null),Object()返回一个空对象。var obj = Object(); // 等同于 var obj = Object(undefined); var obj = Object(null); obj instanceof Ob...

打杂人-aerchi 509

【深度排查】VScode 远程 SSH 连接失败:从网络握手到服务部署的全链路诊断指南

本文详细解析了VScode远程SSH连接失败的常见原因及解决方案,从基础网络排查到SSH服务配置,再到VScode特有的问题处理。特别针对Ubuntu和TrueNAS系统提供了具体配置建议,帮助开发者快速解决'Could not establish connection'等连接问题,提升远程开发效率。

weixin_30301449的博客 446

VM虚拟机下,通过无线,有线两种方式连接PLC的设置方法

1,VMware软件:编辑>虚拟网络编辑器。 2.右下角:更改设置(如果可以选中“添加网络”选项,则可考虑略过此步) 3.选中VMnet0,点击桥接模式,选中你的物理机有线网卡。点击确定。 4.点击添加网络,我的添加完是VMnet2,然后选中,像上一步样,点击桥接模式,在下拉菜单中选中笔记本的【无线网卡】,然后点击确定。 5.VMware软件:虚拟机>设置。 6.点击 添加>网络...

weixin_46441715的博客 2万+

Object.prototype.valueOf()和Object.prototype.toString()

valueOf() 方法用来把对象转换成原始类型的值(数值、字符串和布尔值) toString() 方法返回一个表示该对象的字符串。 原始类型 Number String Boolean Undefined Null String类型转换 如果 toString 方法存在并且返回原始类型,返回 toString 的结果。 如果 toString 方法...

weixin_30314631的博客 210

YOLO11改进策略【独家融合改进】| RCSOSA + SPD + WFU

SPD-Conv是一种新的 CNN 构建模块,用于替代传统 CNN 架构中使用的步长卷积(strided convolution)和池化(pooling)层,它由空间到深度(Space-to-depth,SPD)层和非步长卷积(non - strided convolution)层组成。WFU模块通过小波变换的频率分解与跨尺度融合机制,解决了传统上采样过程中的混叠和细节丢失问题,实现了高效、高保真的面部细节重建。

Limiiiing的博客 449

Object.prototype 上的 valueOf() 和 toString()

一、valueOf() 当一个操作符被用于一个对象时就会调用 valueOf() 方法。 valueOf() 默认返回对象实例本身。 原始封装类型重写了 valueOf() 以使得它对 String 返回一个字符串,对 Boolean 返回一个布尔,对 Number 返回一个数字。 类似的,Date 对象的 valueOf() 方法返回一个 epoch 时间,单位是毫秒(正如 Date.proto...

shenhaiyang7436的博客 456

apache 403错误 Forbidden解决方法

当网页打开提示以下错误时,即出现了403错误。 Forbidden You don't have permission to access / on this server. 403 Forbidden 资源不可用。服务器理解客户的请求,但拒绝处理它。通常由于服务器上文件或目录的权限设置导致。通常情况可能(但不限于此)的原因有: 原因1:apache配置文件中没有对站点目录的权限许可,这通...

lmseo5hy的博客 1495

AI 实战篇 |基于 AI开放平台实现 人脸识别对比 功能,超详细教程【附带源码】

本篇文章来学习一下怎样使用 Unity实现简单地人脸识别 功能。 关于人脸识别,我们可以选择很多平台的SDK接入Unity来实现人脸识别的功能。

努力前行,总会成为自己心中的那道光 5万+

JS 中 原生方法 (四) --- Object

Javascript 中 str、 arr、date、obj 等常见的原生方法总结 本文也说主要阐释了 Javascript 中的基础类型和 引用类型的自带方法,那么熟悉的同学又可以绕道了 总是绕道,真是羞耻悳boy 当然 本文阐述的主要类容 from MDN ( zh-cn ) Object(Javascript 自带属性和方法) Object 自带属性 Object 自带一个 ...

ankuailan3925的博客 611

Windows原生环境配置Tensorflow使用GPU

本文讲解如何在Windows原生环境搭建可调用GPU设备进行计算的Tensorflow2.x环境。 区别于WSL,使用Windows原始环境作为开发环境。

天然玩家的博客 1498

Object对象

上述例子实现更改num的值,obj的sum属性值也更改,修改obj的sum属性的值,num也更改,实现数据的双向绑定。返回一个包含目标对象所有可枚举的属性键与值的数组,每个键值对封装在一个子数组中。直接在一个对象上新增一个新属性,或者修改一个对象的现有属性, 并返回这个对象。常规定义的对象的属性,有一些默认配置,如:可枚举,可删除,可被更改(非常量)等。get():当属性值被读取时被调用,读取的值,就是get()的返回值。上述例子中,通过为obj2添加属性x,实现代理obj1中的属性x。

2401_82484471的博客 917

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Object对象中的常用方法

本文总结了JavaScript中Object对象的一些常用方法

Bushixiana的博客 1071

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

JS中Object对象

JS中的 Object对象 定义:Object是JavaScript中所有对象的父级对象,我们创建的所有对象都继承于此,包括内建对象 语法 使用new操作符后跟Object构造函数 var person = new Object(); 使用对象字面量表达式,对象字面量是对象定义的一种简写形式,目的在于简化创建包含大量属性的对象的过程。 var person = { name :...

FFlouxetine的博客 1544

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

对象(Object)常用方法,对象拷贝

1.Object.assign(target,source1,source2,…) 该方法主要用于对象的合并,将源对象source的所有可枚举属性合并到目标对象target上,此方法只拷贝源对象的自身属性,不拷贝继承的属性。 Object.assign方法实行的是浅拷贝,而不是深拷贝。也就是说,如果源对象某个属性的值是对象,那么目标对象拷贝得到的是这个对象的引用。同名属性会替换。 Object.a...

weixin_44695311的博客 947

C# 将object对象转换为实体对象

C# 将object对象转换为实体对象.一共两种方法. 第一种方法,代码如下: /// <summary> /// 将object对象转换为实体对象 /// </summary> /// <typeparam name="T">实体对象类名</typeparam> /// <param name="asObject">ob...

weixin_30920091的博客 5029

object常用方法及对象拷贝

1.Object.assign(target,source1,source2,…) 该方法主要用于对象的合并,将源对象source的所有可枚举属性合并到目标对象target上,此方法只拷贝源对象的自身属性,不拷贝继承的属性。 Object.assign方法实行的是浅拷贝,而不是深拷贝。也就是说,如果源对象某个属性的值是对象,那么目标对象拷贝得到的是这个对象的引用。同名属性会替换。 Object....

hyld_lzw的博客 1593

js Object对象

概述JavaScript 原生提供Object对象(注意起首的O是大写),所有其他对象都继承自这个对象。Object本身也是一个构造函数,可以直接通过它来生成新对象。var obj = new Object();Object作为构造函数使用时,可以接受一个参数。如果该参数是一个对象,则直接返回这个对象;如果是一个原始类型的值,则返回该值对应的包装对象。var o1 = {a: 1}; var o2

JiangJunDriver的博客 1525

JavaScript Object对象

ES中object类型的对象大致由三种创建方式: 1. 直接使用花括号创建 2. 使用function创建 3. 使用Object.create方法创建。

小张微说的博客 855

ES6中Object对象新增方法拓展

/ {name: 'bob', age: 28, sex: '男'}在实际开发中,当我们需要快速创建一个包含多个属性和方法的对象时,简写对象的方式能显著减少代码量,提高开发效率。是浅拷贝,当源对象的属性值是引用类型时,目标对象拷贝得到的是这个对象的引用,而不是深拷贝。方法可以直接设置和获取对象的原型,但不建议使用,因为它们会影响对象的原型链,导致性能问题和代码可读性变差。方法用于对象的合并,将原对象的所有可枚举属性复制到目标对象,后面的对象会覆盖前面对象相同的属性。// 输出: Buddy barks.

奋斗的小前端 1235

javascript对象中的object对象

//使用字面量语法创建对象 var teacher = { name:"Jaki", age:25, teaching:function(){ console.log("teching..."); } }; Object.defineProperties(teacher,{ "name":{ value:"珲少", writable:false }, "age":{ ...

jackyrongvip的专栏 259

Object对象方法总结

对象=属性(事物的特征,常用名词)+方法(事物的行为,常用动词)对象是一个具体的事物,JS对象是一组无需的相关属性和方法的集合,所有事物都是对象(比如String,Array,function等)

m0_63241410的博客 844

Object 对象方法

Object 对象方法 1. 对象原始转换 对象中不存在布尔转换,只有字符串和数值转换 数值转换发生在对象相减或应用数学函数时 字符串转换通常发生在 alert() 输出时 为了进行转换,JavaScript 尝试查找并调用三个对象方法: obj[Symbol.toPrimitive](hint) obj.toString() obj.valueOf() 1-1 Symbol.toPrimitive Symbol.toPrimitive 的内建 symbol,它被用来给转换方法命名 如果 S

langmanboy的博客 511
上一篇: 数组
下一篇: node-xlsx代码记录
Shirley~~~
博客等级 码龄8年 6粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值