博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript之一切都是对象
阅读量:5757 次
发布时间:2019-06-18

本文共 1540 字,大约阅读时间需要 5 分钟。

在学习的过程中,我们常常能听到这样一句话:一切皆是对象。那么这句话该如何理解呢?

首先,我们要明确对象的概念。要明白除了基本数据类型都是对象。
typeof操作符是大家经常使用的,我们常用它来检测给定变量的数据类型。

1 var a; 2 console.log(typeof a); //undefined 3 console.log(typeof true); //boolean 4 console.log(typeof 'abc'); //string 5 console.log(typeof 12); //number 6 console.log(typeof null); //object,null被认为是一个空的对象引用 7   8 function fn (){ 9   var a = 10;10 }11 console.log(typeof fn); //function12 console.log(typeof [1, 'aaa', false]); //object13 console.log(typeof {name: 'lisi',age: 18}); //object

js中分两种数据类型

基本数据类型:Null, Boolean, Number, String, Undefined, Symbol(ES6)
引用数据类型:Object (在js中,除了基本数据类型都是对象,函数是对象,正则表达式也是对象)
函数在js中是对象,不是一种数据类型。但是函数有一些特殊的属性,所以通过typeof来区分函数和其他对象是有必要的。
判断一个变量是不是对象很简单,基本数据类型的判断用typeof, 引用数据类型的判断用instanceof.

var b = 123;if (typeof b == 'number') {    console.log("number类型");}var person = {    name: 'zhangsan',    age: 12};if(person instanceof Object){    console.log('Object类型的对象');}

对象是属性的集合,属性可以包括基本值,对象或者函数。

1 //早期人们这样创建对象 2 var person = new Object(); 3 person.name = 'lisi'; 4 person.age = 12; 5 person.sayName = function (){ 6     alert(this.name); 7 }; 8 //现在常用字面量语法 9 var  person = {10     name: 'lisi',11     age: 12,12     sayName: function (){13         alert(this.name);14     }15 };

在上例中,创建了一个名为person的对象,并为它添加了两个属性(name,age)和一个方法属性( sayName() )。由此可见,对象是属性的集合。

还有一个问题,既然函数是对象,那么函数该怎样添加属性呢?

//函数添加属性function fn (){    var a = 10;}fn.a = '123';fn.b = function (){    alert('bbb');}

总之,要理解一切都是对象,要明确两个概念。第一,除了基本数据类型都是对象;第二,对象是属性的集合,属性包括基本值、对象和函数。

 

转载于:https://www.cnblogs.com/ly2019/p/10963121.html

你可能感兴趣的文章
我的青春在路上—启程
查看>>
MySQL双主互备模式架构
查看>>
ProxmoxVE 之 使用thinstation利旧安装瘦客户端
查看>>
Android异步处理一:使用Thread+Handler实现非UI线程更新UI界面
查看>>
MySQL简单的用户管理
查看>>
(二)lnmp环境的搭建:php
查看>>
Oracle Data Concurrency and Consistency二之Oracle锁机制
查看>>
网络分析学习资料:网络回溯分析技术八大应用之策略支持
查看>>
IOS开发之修改icon
查看>>
dic home should not be a file, but a directory!
查看>>
传统STP的收敛和TCN
查看>>
转载网上一篇关于QQ面板点击空间、邮箱打不开的解决方法
查看>>
从TMP文件恢复Word文件
查看>>
在angular2中使用tinymce富文本编辑,并实现上传图片功能
查看>>
西南航空创始人:82岁,我心依旧狂野
查看>>
Nginx缓存技术之fastcgi_cache
查看>>
php查询百度google收录情况
查看>>
PHP使用SOAP连接webserver的接口
查看>>
PXE网络安装出现蓝屏0x000000BB
查看>>
plsql数组和嵌套
查看>>