javascrip自定义对象的方式
对象初始化方式(也叫json对象创建方式)
<script type="text/javascript">
var User = {
name:"paul",
age:25,
toString:function()
{
alert(this.name+' is '+ this.age);
}
}
function display_user()
{
/* 不能用这种方式去创建对象,因为json对象方式没有构造函数*/
var paul = new User();
/* 直接用如下方式引用就可以了*/
User .toString();
}
</script>
构造函数方式
function User(name,age)
{
this.name =name;
this.age = age;
this.toString=function()
{
alert(this.name+' is '+this.age);
}
}
function display_user()
{
/* 因为对象有了构造函数,所以可以用如下方式 */
var paul = new User('paul',25);
paul.toString();
}
对于对象属性和方法的定义可以有如下几种方式:
属性分为私有属性,实例属性,和类属性;方法也是一样的,分为方法分为私有方法,实例方法,和类方法。
function User(name,age)
{
this.name =name;
this.age = age;
var adult_age = 18; /* 这是私有的属性*/
this.toString=function()
{
alert(this.name+' is '+this.age);
}
}
function display_user()
{
var paul = new User('paul',25);
paul.toString();
/* 因为adult_age是私有的属性,所以不能以这种方式访问,所以会出现undefined */
alert(paul.adult_age);
}
实例方法
function User(name,age)
{
this.name =name;
this.age = age;
var adult_age = 18;
this.toString=function()
{
alert(this.name+' is '+this.age);
}
}
/* 可以用原型的方式来添加实例的属性和方法 */
User.prototype.lastName = 'hu';
function display_user()
{
var paul = new User('paul',25);
paul.toString();
/* 以下是实例属性 */
alert(paul.name+' '+paul.lastName);
}
类的方法和属性
function User(name,age)
{
this.name =name;
this.age = age;
var adult_age = 18;
this.toString=function()
{
alert(this.name+' is '+this.age);
}
}
User.ID = 20000000;
function display_user()
{
var paul = new User('paul',25);
paul.toString();
/* 通过类名来进行引用 */
alert(User.ID);
}
javascrip自定义对象的方式的更多相关文章
- JS 创建自定义对象的方式方法
一.概述 还记得刚开始做项目的时候,看到别人封装的js工具类百思不得其解,看来看去看不懂,深挖一下,其实就是自己没有耐下心去看,但是遇到问题不解决,总会遇到的,今天还是遇到了,就去找了找帖子,重新思考 ...
- Spark 实现自定义对象sequenceFile方式存储,读写示例(scala编写)
package com.fuge.bigdata.datahub.analysis import java.io.{DataInput, DataOutput} import com.fuge.big ...
- Map集合的遍历方式以及TreeMap集合保存自定义对象实现比较的Comparable和Comparator两种方式
Map集合的特点 1.Map集合中保存的都是键值对,键和值是一一对应的 2.一个映射不能包含重复的值 3.每个键最多只能映射到一个值上 Map接口和Collection接口的不同 Map是双列集合的根 ...
- OBjective-C:在可变数组NSMutableArray中添加相同对象后,进行自定义的排序方式输出
以下为自定义的排序方式的实现 #import "Person+Compare.h" @implementation Person (Compare) -(NSComparisonR ...
- JavaScript 自定义对象
在Js中,除了Array.Date.Number等内置对象外,开发者可以通过Js代码创建自己的对象. 目录 1. 对象特性:描述对象的特性 2. 创建对象方式:对象直接量.new 构造函数.Objec ...
- Asp.Net 自定义储存Session方式
介绍 由于针对于自定义Session存储方式比较少,所以整理了使用自定义Session的方式.用于构建自定义会话存储提供程序代码,而不是使用默认的 SessionStore 介绍 背景 本文使用的是m ...
- javascript对象创建方式
工厂模式 在ECMAscript中无法创建类,所以开发人员就发明了一种函数,用函数来封装,以特定接口创建对象的细节,如下面的例子所示: function createPerson(name,age,j ...
- js自定义对象
一,概述 在Java语言中,我们可以定义自己的类,并根据这些类创建对象来使用,在Javascript中,我们也可以定义自己的类,例如定义User类.Hashtable类等等. 目前在Javascrip ...
- Java对象表示方式1:序列化、反序列化和transient关键字的作用
平时我们在Java内存中的对象,是无法进行IO操作或者网络通信的,因为在进行IO操作或者网络通信的时候,人家根本不知道内存中的对象是个什么东西,因此必须将对象以某种方式表示出来,即存储对象中的状态.一 ...
随机推荐
- hdu3007Buried memory(最小圆覆盖)
链接 普通的暴力复杂度达到O(n^4),对于这题肯定是不行的. 解法:随机增量算法 参考http://www.2cto.com/kf/201208/149602.html algorithm:A.令C ...
- thinkphp自动验证方法的使用
建一个表单: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...
- C++—函数探幽
一.内联函数 1.内联函数的机制 内联函数是C++为提高程序运行速度而做的一项改进. 函数调用机制:常规函数调用使程序使程序跳到被掉函数的地址,并在函数结束时返回. 内联函数的机制:内联函数的代码与其 ...
- Could not obtain connection metadata
用hibernate连接数据库出现错误 2010-3-16 17:23:39, 093 [main] WARN [org.hibernate.cfg.SettingsFactory] - Could ...
- 工作流学习——Activiti流程变量五步曲 (zhuan)
http://blog.csdn.net/zwk626542417/article/details/46648139 ***************************************** ...
- mac10.12的Cocopods安装使用
Cocopods的安装 CocoaPods应该是iOS最常用最有名的类库管理当我们开发iOS应用时,会经常使用到很多第三方开源类库,比如AFNetWorking等等,可能某个类库又用到其他的库,手动一 ...
- [转]Android ORM系列之GreenDao最佳实践
GreenDAO是一个可以帮助Android开发者快速将Java对象映射到SQLite数据库的表单中的ORM解决方案,通过使用一个简单的面向对象API,开发者可以对Java对象进行存储.更新.删除和查 ...
- angular 零碎知识
各种服务: $location:可以监听事件的改变 link 在没有设置template的情况下,指令作为标签使用的时候,ele是指令(伪数组的形式); * 如果指令作为属性使用的话,ele是使用该指 ...
- php向数据库写数据逻辑
先写php 文件 1.post请求 1)先确定传进来的数据有值 没有就退出程序 if(!isset($_POST['username'])){ die('没有传值') } 2)设config.php ...
- jq文本框显示最多可以输入多少字
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...