为什么字符串会有length属性-JS中包装对象
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么字符串会有length属性-JS中包装对象相关的知识,希望对你有一定的参考价值。
任何原始类型的数据 (primitive type)
比如 String类型的字符串 "abcd"
"abcd" 是原始类型的数据
但是 当他调用 length的时候 会返回一个整数( 原始类型数值,注意这里说的是数值 本身是没有任何方法的)
在调用length的时候, JS引擎会先对原始类型数据进行包装 new String("abcd")
然后对其方法进行调用 new String("abcd").length
下面验证这个说法:
primitiveValue 原始值
实例 给 Number类型 加一个length方法,可以返回Number的长度
Number.prototype.length = function(){return String(this.toString()).length}
以上是关于为什么字符串会有length属性-JS中包装对象的主要内容,如果未能解决你的问题,请参考以下文章