学ui的网站,高等教材电工学久久建筑网,京东网站的设计风格,濮阳网站建设哪家好我们一直在用对象 可是你真的理解对象吗#xff0c;js中有一个说法是一切皆对象#xff0c;其实这里说的应该是
一切皆可看作对象 对象就是可以拥有属性和方法的一个集合 士兵就是一个对象#xff0c;它拥有身高体重的属性#xff0c;保家卫国#xff0c;吃饭睡觉的动作方…我们一直在用对象 可是你真的理解对象吗js中有一个说法是一切皆对象其实这里说的应该是
一切皆可看作对象 对象就是可以拥有属性和方法的一个集合 士兵就是一个对象它拥有身高体重的属性保家卫国吃饭睡觉的动作方法
在座的各位都是对象世界上的万物都可看作对象所以说编程世界多姿多彩
也可以理解为无序的键值对 var obj{width:100,height:200,say:function(){//code}};
就相当于 var obj{};
obj.width100; //width属性值200
obj.height200; //height属性值200
obj.sayfunction(){ //say方法
//code
}
并且对象的属性和方法可以改变
obj.width200;
方法同理
概念理解了,其实代码就容易理解了。
现在说说一切皆可看作对象是怎么来的我说说我自己的理解
数据类型分为两种 基本数据类型和引用类型
基本数据分为stringnumberbooleannullundefined
基本类型基本数值、基本数据类型是指非 对象 并且无方法的数据
一个一个说 var uphe is a super man; var outputup.charAt(5); console.log(output);//a /*为什么基本数据类型可以使用字符串方法呢 因为包装对象:当执行 var outputup.charAt(5);这个步骤的时候 后台会这样 var upnew String(he is a super man);找到对应的包装对象,包装成一个和up值相等的对象返 回 var outputup.charAt(5);调用方法返回给output upnull; 然后销毁
同理数字、布尔值在读取属性的时候也可以通过自己的构造函数来创建自己的一个临时对象并像对象一样就是一个对象引用各自的属性所以字符串、数字、布尔值都可以看成是对象注意这里是看成对象他们并不是真正的对象也就是严格来说它们并不是对象因为对象是可变的可以修改属性而原始值是不可变的是不可修改的(看下面) var babcdefg; console.log(b.toUpperCase()); console.log(b);
它只是返回一个变成大写的副本没有改变原始的变量
而且不能在原始数据类型上添加属性和方法。 因为创建的只是一个临时对象写的属性和方法只存在于临时对象上引用完后随即销毁
ps:还没有访问就已经销毁了
*/
接着说说null 他是一个关键字表示为“空 并且 console.log(typeof null); //object
由此可见它是一个对象但是它只是指向一个空对象的引用。
然后是undefinedundefined是另一个表示“空值”特殊值它表示未定义当我们对变量只声明没有初始化时(赋值)输出为undefined当我们引用一个不存在的属性时输出也为undefined,但是请注意它并不是一个关键字它是一个变量而且是一个全局变量我们可以验证一下
console.log( undefined in window);//true
而且console.log(typeof undefined);//undefined
这严格表明undefined是这个类型的唯一成员
除了undefined js里面其他一切的都可以看作是对象 记住是看作
更多专业前端知识请上
【猿2048】www.mk2048.com