美文网首页
面试中遇到的toString,回来稍微研究了一下

面试中遇到的toString,回来稍微研究了一下

作者: 阿凡农 | 来源:发表于2018-04-26 19:09 被阅读0次

有一回面试碰到了将一个arr =  [[[2, 3]]]调用toString()方法,正确答案是“2,3”,该方法是array原型下的方法。

我们可能会看到有2个使用方式,一个Object.prototype.toString(),一个toString()。其实,toString()方法是前者重写后的方法。如:

var obj = new Object()

obj.toString()    // [object object]

Object原型下有一个toString()方法,该方法通过一个call()方法将参数绑定到具体的对象,如:

Object.prototype.toString.call(1)

在该方法中,本来1是一个数字类型对象,应该继承Object下边的方法,但实际是,使用call()改变了对象下toString()方法的继承对象,返回的结果是[object, Number]

再测试下数组:

所以,数组也重写了Object下的toString()方法。

1、Object.prototype.toString()

2、Array.prototype.toString()

对数组对象,该方法返回一个字符串,对数组内的每个元素调用toString()方法,并使用join()方法进行连接。对于多维数组,会对内部数组也调用该方法

当数组与字符串进行连接操作时,会自动调用toString()方法

3、Number.prototype.toString()

上述方法返回的结果是0,不能直接使用1.toString()的方式,因为js会把1后边的点当成是小数点,报错。

使用场景:

可以用来判断数据类型,可以将数字转换成进制形式的数字。

我们知道,js有null,undefined,boolean,number.array,object.function数据类型,而typeof只能区分出来基本类型,也就是undefined,boolean,number,string,object这5个基本数据类型,当想要区分null,array,function,object的时候,就没法区分了。这个时候

Object.prototype.toString.call()方法就发挥作用了。话不多说,上代码:

甚至!它还可以判断date,正则!

相关文章

  • 面试中遇到的toString,回来稍微研究了一下

    有一回面试碰到了将一个arr = [[[2, 3]]]调用toString()方法,正确答案是“2,3”,该方法是...

  • toString方法中遇到的问题

    问题描述 在开发的过程中,遇到toString这个方法,就记录一下使用的过程中遇到的问题。 稍微修改一下 由此可以...

  • 稍微研究了一下“爱情”

    前段时间对“爱情是什么”非常好奇,因为没有经历过,毫无概念,自己空想肯定是没有结果的。于是找来了一些公认的好的研究...

  • Html跨域问题

    公司遇到的问题,研究了下,虽然最后还是没用到,稍微记录一下留个纪念。 前端:$.ajax({url: 'http:...

  • 中软国际一面

    没想到,最近的第一次面试就遇到要用英语来自我介绍?!我就前一天晚上稍微准备了一下英文稿子,面试的时候就熟读一下,今...

  • 关于Block的一个经典bug

    之前常常遇到block的循环引用问题,就稍微研究了一下,block对于访问外部对象类型有严格的限制,通常会使用__...

  • 遇到 toString() 的问题

    JavaScript 采用“IEEE 754 标准定义的双精度64位格式” 来表示数字,所有数字在Javascri...

  • iOS开发 论两个OC对象相等

    之前去陌陌面试 ,出了一道面试题,说是判断两个OC对象相等,回来就好好研究了一下。。。。。。 在OC里面对于基本数...

  • 002-InstantiationAwareBeanPostPr

    1.目的 以前也稍微了解spring的源码,最近在研究研究,记录一下心得。今天就针对spring中Instanti...

  • 001-BeanPostProcessor

    1.目的 以前也稍微了解spring的源码,最近在研究研究,记录一下心得。今天就针对spring中BeanPost...

网友评论

      本文标题:面试中遇到的toString,回来稍微研究了一下

      本文链接:https://www.haomeiwen.com/subject/kyymlftx.html