博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript简单对象创建
阅读量:6950 次
发布时间:2019-06-27

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

由于javascript中定义了一个函数就相当于定义了一个类,我们当然可以创建一个这个类的对象。

    New Document   

虽然java和javascript根本是两种东西,但这段代码应该很好理解。

首先定义了一个Person类,定义类的属性的方法非常简单,直接用this就可以定义,但是不用this去定义,会出现什么后果呢?我们在类添加一个变量sex,赋值为"male"。

function Person(name,age){	//定义了一个Person属性name	this.name = name;	//定义了一个Person属性age	this.age  = age;	//定义了一个Person属性address	this.address = "harbin";	var sex="male";}

输出代码如下:

alert(p1.name+","+p1.address+","+p1.sex);

运行结果:

显示为undefined,未定义的原因是我们并没有用this来定义属性,如果只是简单的定义一个变量,那么它只是一个局部变量,并不是一个类的属性,这一点要弄明白。同理我们在类里随便定义函数,也是不能直接用的,比如:

function Person(name,age){	//定义了一个Person属性name	this.name = name;	//定义了一个Person属性age	this.age  = age;	//定义了一个Person属性address	this.address = "harbin";	var sex="male";	function say()	{		alert("saying");	}}

添加代码:

var p1 = new Person("maybe",21);alert(p1.name+","+p1.address+","+p1.sex);p1.say();

当运行到p1.say时,会出现错误:

 

对于变量我们已经解决了,那么方法怎么可以直接通过对象调用呢?

方法很简单。还是利用this:

function Person(name,age){	//定义了一个Person属性name	this.name = name;	//定义了一个Person属性age	this.age  = age;	//定义了一个Person属性address	this.address = "harbin";	var sex="male";	this.say = function()	{		alert("saying");	}}

定义一个Person的say属性指向function,这样就能成功调用函数了。

 

 

 

 

你可能感兴趣的文章
JAVA-1007. 素数对猜想 (20)
查看>>
IBM PowerAI编程大赛Q2场来袭!探秘金融语料大数据识别
查看>>
怎么用itunes来打开手机软件
查看>>
让ajax更加友好,实时显示后台处理进度。
查看>>
php加载memcache模块
查看>>
C#单例的多种写法
查看>>
为什么 muduo 的 shutdown() 没有直接关闭 TCP 连接?
查看>>
Android启示录——开始Android旅途
查看>>
ssh原始整合
查看>>
[Advance] How to debug a program (下):示例
查看>>
高级网络配置+Ipv6
查看>>
VMware ESXI虚拟机及虚拟系统修改MAC地址的方法
查看>>
AES算法,DES算法,RSA算法JAVA实现
查看>>
IOS 多个UIImageView 加载高清大图时内存管理
查看>>
管理软raid磁盘队列
查看>>
MySQL双主机双Master方案测试
查看>>
正则表达式-grep命令
查看>>
菜鸟学Linux 第055篇笔记 php基础
查看>>
xtrabackup备份mysql数据库
查看>>
BIOS报警声
查看>>