扫码关注官方订阅号
js中既然万事万物皆对象,为什么数据类型不是object呢?而有那些基本数据类型呢
走同样的路,发现不同的人生
我理解的万物皆对象是一种编程;编程语言是按照逻辑处理数据用的;JS里的变量就是方便操作数据而定义的;数据也是需要分类的,就好比世界,分为人类,动物类等等;编程的语言里,分为数组,函数,字符串,正则,日期,布尔值等;单独拿数组来说好了,数组也是有数组类和数组实例的;这种创建的方式,就是面向对象的方式,JS里所有的数据,__proto__的重点都是指向Object的(Function类属于特殊,而且Funtion类的终点也是Object);基本类型的有:string,number等那些(基本类型的数据,建议基础的多看一下);但是基本类型的也是有类的,也属于对象的方式,只是我们正常做开发,不会用构造函数的方式创造罢了;string有String类;你可以这么理解基本类型的,假如string不是对象的一个分子,怎么可能会有replace,indexOf等方法呢?你可以new String的方式创造一个字符串实例;
通过dir打印看一下
console.dir(varName);
然后顺着__proto__查找,你会更深刻的理解;
用现实中的例子就是,人属于人类,人继承了人类一个鼻子两只手的特种,但是虽然我们都继承了人类的特征,并不能说我的手就是你的手;虽然我们都属于自然界的,但是我们不能把狗猫,人,桌子,墙,汽车都叫自然界;这就是数据分类的原因;也就是为什么数据类型不是object;
效率问题,把整数封装为object再进行数学运算会慢上很多倍。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
我理解的万物皆对象是一种编程;
编程语言是按照逻辑处理数据用的;
JS里的变量就是方便操作数据而定义的;
数据也是需要分类的,就好比世界,分为人类,动物类等等;
编程的语言里,分为数组,函数,字符串,正则,日期,布尔值等;
单独拿数组来说好了,数组也是有数组类和数组实例的;这种创建的方式,就是面向对象的方式,JS里所有的数据,__proto__的重点都是指向Object的(Function类属于特殊,而且Funtion类的终点也是Object);
基本类型的有:string,number等那些(基本类型的数据,建议基础的多看一下);但是基本类型的也是有类的,也属于对象的方式,只是我们正常做开发,不会用构造函数的方式创造罢了;string有String类;
你可以这么理解基本类型的,假如string不是对象的一个分子,怎么可能会有replace,indexOf等方法呢?
你可以new String的方式创造一个字符串实例;
通过dir打印看一下
然后顺着__proto__查找,你会更深刻的理解;
用现实中的例子就是,人属于人类,人继承了人类一个鼻子两只手的特种,但是虽然我们都继承了人类的特征,并不能说我的手就是你的手;虽然我们都属于自然界的,但是我们不能把狗猫,人,桌子,墙,汽车都叫自然界;这就是数据分类的原因;也就是为什么数据类型不是object;
效率问题,把整数封装为object再进行数学运算会慢上很多倍。