自定义对象

我们知道了内置对象,那就不难理解自定义对象,随着社会的发展,一些内置对象满不足不了我们的需求,那这时就需要我们自己定义一些我们需要的对象,我们要了解他的一些基本概念,比如它的组成,作用啊。它是由属性和方法组成,他的作用是帮我们封装一些数据,方便我们在程序中传输和控制。它倒是有好几种创建方式:

一:通过构造函数来创建

// 自定义对象如何 创建   通过构造函数的方式创建对象var student = new Object();  //创建了一个学生的空对象// 属性(特征,姓名,性别,年龄,手机号,家庭)和方法(打招呼,游泳,打球)student.name = "张三";student.sex = "男";student.age = 20;student.sayHi = function (){console.log("我叫"+student.name+",我今年"+student.age+",我是"+student.sex+"生");    };

//    var num = 25;//    console.log(num);

console.log(student.name);console.log(student.age);console.log(student.sex);

二:批量创建函数

function  createStudent(name,age,sex){var student = new Object();// 用构造函数的方式创建了一个空对象并返回student.name =name;student.age = age;student.sex= sex;student.sayHi= function(){console.log("我叫"+student.name+",我今年"+student.age+",我是"+student.sex+"生");    };return student;//将这个对象返回}

var zs = createStudent("张三",25,"男");zs.sayHi();

var ls = createStudent("李四",26,"男");ls.sayHi();var zs1 = createStudent("赵四",28,"男");zs1.sayHi();

上面批量创建对象里,student是对象,它可以有很多,那我们要怎么创建一个泛指的自定义对象呢,当我们调用时再给对象赋值,这样就可以使我们程序更简洁,我们可以使用两个关键字,this和new。

function  createStudent(name,age,sex){//var student = new Object();// 用构造函数的方式创建了一个空对象并返回this.name =name;   // 将当前的对象用另一个关键字来代替,就是thisthis.age = age;this.sex= sex;this.sayHi= function(){console.log("我叫"+this.name+",我今年"+this.age+",我是"+this.sex+"生");    };//return student;//将这个对象返回}

//var zs = new createStudent("张三",22,"男");  //  //zs.sayHi();

用这种方法,是很方便,但我们要清楚的弄清this和new在这里的一些功能,因为这种构造方法中this和new是很重要的,this在这里可以指所有对象,当调用时,你想要什么对象。this它就指向谁,new在这里的作用就要多了点,它主要执行了四个步骤:

// new 关键字来完成// 1. 创建一个空对象// 2. 将关键字this指向这个空对象// 3. 执行构造函数里面的代码,给当前空对象this设置属性和方法// 4. 将this这个当前对象返回

三:对象字面量创建方式,它看上去更简洁,如果用的熟的话,那这个用起来是很方便的。

 var o = {name:"张三",age:20,address:"上海市",sex:"男",//        sayHi:function(){//            console.log("大家好,我的名字是:"+ this.name+",我的年龄是:"+ this.age+",我是"+ this.sex+"生");//        }sayHi:function(){console.log("大家好,我的名字是:"+ o["name"]+",我的年龄是:"+ o["age"]+",我是"+ this.sex+"生");        }    };

它用一个{}把所有东西就包括进去了,当我们看见{}就要知道它是个对象,当看到[ ]时,我们要知道它是个数组,这两个符号都代表不同意义。

其实这里面的格式和上面差不多,只是把对象"o"放到最外面,里面格式是属性+":"+属性值+","。理解了上面的几种方式后,看这种应该会觉得这种更简单,也简洁。

JSON是JavaScript的对象的表达方式。我们只要知道他是传输数组的一种数据格式,他和对象字面量差不多,唯一的不同就是在属性上要加上双引号(“”);

 // 自定义对象如何 创建   通过构造函数的方式创建对象
    var student = new Object();  //创建了一个学生的空对象
    // 属性(特征,姓名,性别,年龄,手机号,家庭)和方法(打招呼,游泳,打球)
    student.name = "张三";
    student.sex = "男";
    student.age = 20;
    student.sayHi = function (){
        console.log("我叫"+student.name+",我今年"+student.age+",我是"+student.sex+"生");
    };

//    var num = 25;
//    console.log(num);

    console.log(student.name);
    console.log(student.age);
    console.log(student.sex);

    //函数名();
    // 对象名.方法名();
    student.sayHi();
时间: 2024-11-18 07:40:59

自定义对象的相关文章

IOS开发——UI进阶篇(十一)应用沙盒,归档,解档,偏好设置,plist存储,NSData,自定义对象归档解档

1.iOS应用数据存储的常用方式XML属性列表(plist)归档Preference(偏好设置)NSKeyedArchiver归档(NSCoding)SQLite3 Core Data 2.应用沙盒每个iOS应用都有自己的应用沙盒(应用沙盒就是文件系统目录),与其他文件系统隔离.应用必须待在自己的沙盒里,其他应用不能访问该沙盒应用沙盒的文件系统目录,如下图所示(假设应用的名称叫Layer)模拟器应用沙盒的根路径在: (apple是用户名, 8.0是模拟器版本)/Users/apple/Libra

自定义对象内容及实例,适合初学者

[自定义对象] 1.基本概念 ①对象是拥有一系列无序属性和方法的集合: ②键值对,对象中的数据,是以键值对的形式存在,对象的每个属性和方法,都对应一个键名,以键取值. ③属性:描述对象特征的一系列变量,称为属性. ④方法,描述对象行为的一系列函数,称为方法. 2.对象的声明 var obj ={ key1:value1, key2:value2, func1:function(){ } } 对象中的数据以键值对的形式存储,键与键值之间用:分隔,多个键值对之间用,分隔 对象中的键,可以是出了数组,

jQuery基础(常用插件 表单验证,图片放大镜,自定义对象级,jQuery UI,面板折叠)

1.表单验证插件--validate   该插件自带包含必填.数字.URL在内容的验证规则,即时显示异常信息,此外,还允许自定义验证规则,插件调用方法如下: $(form).validate({options}) 其中form参数表示表单元素名称,options参数表示调用方法时的配置对象,所有的验证规则和异常信息显示的位置都在该对象中进行设置.     2.表单插件--form 通过表单form插件,调用ajaxForm()方法,实现ajax方式向服务器提交表单数据,并通过方法中的option

java 16 -11 ArrayList存储自定义对象并增强for遍历

需求:ArrayList存储自定义对象并遍历.要求加入泛型,并用增强for遍历. A:迭代器 B:普通for     C:增强for LinkedList,Vector,Colleciton,List等存储继续练习 增强for是用来替迭代器. 1 package cn_JDK5new; 2 3 import java.util.ArrayList; 4 import java.util.Iterator; 5 6 7 public class ArrListDemo2 { 8 public st

Java基础知识强化之集合框架笔记45:Set集合之TreeSet存储自定义对象并遍历练习1(自然排序)

1. TreeSet存储自定义对象并遍历练习1(自然排序): (1)Student.java: 1 package cn.itcast_05; 2 3 /* 4 * 如果一个类的元素要想能够进行自然排序,就必须实现自然排序接口 5 */ 6 public class Student implements Comparable<Student> { 7 private String name; 8 private int age; 9 10 public Student() { 11 super

Java基础知识强化之集合框架笔记46:Set集合之TreeSet存储自定义对象并遍历练习2(自然排序)

1. TreeSet存储自定义对象并遍历练习2: (1)Student.java 1 package cn.itcast_06; 2 3 /* 4 * 如果一个类的元素要想能够进行自然排序,就必须实现自然排序接口 5 */ 6 public class Student implements Comparable<Student> { 7 private String name; 8 private int age; 9 10 public Student() { 11 super(); 12

向集合中存储自定义对象是,自定义对象的设计

自定义对象 通过对List.Set.Map 集合的操作,发现集合的不同,自定义类的定义也有所差异 1.List集合中的自定义对象 由于List底层判断集合是否相同依赖的是equals方法,所以在自定义类时要覆盖equals方法 示例: //自定义类Person class Person{ private String name; private int age; Person(String name, int age){ this.name = name; this.age = age; } p

iOS开发——保存自定义对象数组、字典到文件

在ios中,要保存普通的数组到文件可以直接调用-wirteToFile:atomically:方法写入,并且可以通过NSArray的方法-initWithContentOfFile:来读文件初始化数组.然而,当要保存的数组中存储的数据对象是自定义对象时,就得通过对象归档的方法来实现了,具体来说 一.自定义对象实现归档协议,并实现方法- (id)initWithCoder:和方法- (void)encodeWithCoder: @interface CourseModel : CYZBaseMod

JS自定义对象,正则表达式,JQuery中的一些知识点

一:自定义对象 1.基本概念:①对象:包含一系列无序属性和方法的集合.②键值对:对象中的数据是以键值对的形式存在的,以键取值.③属性:描述对象特征的一系列变量.[对象中的变量]④方法:描述对象行为的一系列方法.[对象中的函数] 2. 对象的声明: ①字面量声明:var obj={}: ②new 关键字:var lisi = new Object(); 3.对象中属性和方法的读写方式: ①通过.运算符:对象内部:this.属性名 this.方法名(); 对象外部:对象名.属性名 对象名.方法名.