1 初识面向对象(面向对象是一种思维方式

以前写的代码

 var name = '莉莉';
var sex = '女';
var age = 18;
var name1 = '小明';
var sex1 = '男';
var age1 = 19;

面向对象的代码:

 var lili = {
name: 'lili',
sex: 'nv',
age: 18
}
var xiaoming = {
name: 'xiaoming',
sex: 'nan',
age: 19
}

2 简单工厂

简单工厂:people函数可以产生对象,根据传入的参数不同产生的对象也不同

参数===原料, 对象===产品

 function people(name, sex, age) {
// 声明一个空对象
var obj = {};
// 给属性赋值
obj.name = name;
obj.sex = sex;
obj.age = age;
// 添加方法
obj.show = function() {
console.log("我叫" + this.name + ', 我今年' + this.age + '岁,我是一个' + this.sex + '生!');
}
// 返回对象
return obj;
}

简单工厂的缺陷:通过工厂产生的对象,没有办法区分种类

3 构造函数

1、构造函数首字母大写,但这不是语法要求,作为书写习惯

2、构造函数使用new 关键字调用

new操作的过程

1、在内存中申请了一块空间

2、改变this指向(this默认指向window对象,this指向要生成的对象)

3、为this赋值

4、返回this指向的对象

return对构造函数的影响(结论:非引用的返回值没有影响,引用类型的返回值会取代this所指向的对象)

说法:(实例、类、实例化)

将产生的对象称之为实例(实例化对象)

将new过程称之为实例化

 将构造函数称之为类

     <script>
function People(name, sex, age) {
// 给属性赋值
this.name = name;
this.sex = sex;
this.age = age;
// 添加方法
this.show = function() {
console.log("我叫" + this.name + ', 我今年' + this.age + '岁,我是一个' + this.sex + '生!');
}
}
var xiaoming = new People('小明', '男', 18);
</script>

5 备份this(当指定对象不是this的指定对象 就会默认window对象为指定对象 这时就得备份);

 <script>
var obj = {
name1: 'aaa',
demo: function() {
console.log(this.name1);
},
test: function() {
// 备份this
var me = this;
(function() {
// 此处this不会指向obj对象,指向的是window对象
// console.log(this.name1);
console.log(me.name1);
})();
}
}
obj.demo();
// window.name1 = 333;
obj.test();
</script>

jQuery进阶第四天(2019 10.13)的更多相关文章

  1. jQuery进阶第二天(2019 10.10)

    一.事件流程 1.事件的三要素: 事件源:发生事件的对象 事件类型:类型比如单击.双击.鼠标的移入.移除 事件处理程序: 触发事件之后做些什么,事件处理的函数 <body> <but ...

  2. 2019/10/13 TZOJ

    水题虽不好,但是很爽 渴望未来某天能把剩下的题补了,先做个记录. Hard Disk Drive http://acm.hdu.edu.cn/showproblem.php?pid=4788 单位转化 ...

  3. 【2019.10.17】十天Web前端程序员体验(软件工程实践第五次作业)

    结对信息.具体分工 Github地址:https://github.com/MokouTyan/131700101-031702425 学号 昵称 主要负责内容 博客地址 131700101 莫多 代 ...

  4. 荣耀MagicBook黑苹果(i7)High Sierra 10.13.6

    这里有大佬维护的新版本EFI,对应10.14.4:https://github.com/hjmmc/Honor-Magicbook ---------------------------------- ...

  5. 第一次Scrum会议(10/13)【欢迎来怼】

    一.小组信息 队名:欢迎来怼 小组成员 队长:田继平 成员:李圆圆,葛美义,王伟东,姜珊,邵朔,冉华 小组照片 二.开会信息 时间:2017/10/13 16:22~16:47,总计25min. 地点 ...

  6. win7笔记本VirtualBox安装黑苹果MacOS 10.13

    环境 时间:2018.04.09,没有指明时间的教程都是耍流氓 笔记本:某州优雅A460P-i7G D2,4G内存,Intel Core i7-2670QM四核八线程(老笔记本勉强能用),ssd硬盘, ...

  7. jquery进阶(1)

    今天我们接着来学习jQuery中的内容,包括css的操作.尺寸的操作.文档的操作.动画(有待补充),事件处理操作. 一.CSS 在css中可以设置css的基本属性 - .css("color ...

  8. Bing Maps进阶系列四:路由功能服务(RouteService)

    Bing Maps进阶系列四:路由功能服务(RouteService) Bing Maps提供的路由功能服务(RouteService)可以实现多方位的计算地图上的路线指示,路径行程等功能,比如说实现 ...

  9. 黑苹果之DELL台式机安装Mac OS X 10.13.6版本操作系统

    由于本人所在的公司一般都是DELL的品牌台式机,所以以DELL台式机做小白鼠.记得在2012年的时候,在当时的那家公司为了学习自学IOS开发的Objective-C开发语言的时候,由于囊中羞涩买不起m ...

随机推荐

  1. Logstash的filter插件介绍

    一 官网说明 过滤器插件对事件执行中介处理.通常根据事件的特征有条件地应用过滤器. 以下过滤器插件在下面可用. Plugin Description Github repository aggrega ...

  2. sqli-libs(7)

    导出文件GET字符型注入 0x01介绍 导出到文件就是可以将查询结果导出到一个文件中,如常见的将一句话木马导出到一个php文件中,sqlmap中也有导出一句话和一个文件上传的页面 常用的语句是:  s ...

  3. android UI设计及开发

    一.viewPager实现左右滑动及导引功能 1,如果每个屏幕只是一个简单的布局,如果简单的话,定义一个arraryIist<View>,利用addview将所有的布局加载, 然后为vie ...

  4. 实现Runable接口

    步骤 定义一个实现Runable接口的类,在类中实现run()方法(线程执行事件的方法).创建一个上述类的对象:Thread t=new Thread(new MyThreadt.start());调 ...

  5. 挖矿病毒DDG的分析与清除

    注:以下所有操作均在CentOS 7.2 x86_64位系统下完成. 今天突然收到“阿里云”的告警短信: 尊敬的****:云盾云安全中心检测到您的服务器:*.*.*.*(app)出现了紧急安全事件:挖 ...

  6. npm 错误记录

    npm run dev iview-weapp@1.1.0 dev /Users/Jovins/Desktop/小程序/iview-weapp gulp --gulpfile build/build- ...

  7. TP3.2写分页

    用TP3.2写分页 手册上说的好难懂,我自己去网上找资料 ,现在整理一下,以后可能会用: 在Think下面有Page.class.php类: 我在这个下面放了一个function.php的(算是类吧又 ...

  8. maven 导出项目所依赖的jar包

    1.在 pom文件中 点击 Run As->Maven Build 2.在 Goals 中输入 dependency:copy-dependencies 3.之后会在 项目目录的 target/ ...

  9. tomcat 404 The origin server did not find a current representation for the target resource or is not willing to disclose that one exists.

    1.原因 tomcat没有找到项目,因为是用eclipse启动的,不是在tomcat的目录下启动,所以我们需要在eclipse下配置启动目录,好让tomcat找到项目. 2.解决 用本地安装的tomc ...

  10. c# AES128 加解密算法

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...