#笔记#圣思园 JavaWeb 第53讲——function对象、工厂方式、构造函数方式、原型方式定义对象
来源:互联网 发布:淘宝排名怎么靠前 编辑:程序博客网 时间:2024/06/02 23:24
1.JavaScript中,函数(function)就是对象
JavaScript中,没有“方法重载”的概念
“add”是指向对象的引用,定义了两个function,add最后指向后面定义的function
JavaScript中有一个Function对象,所有定义的函数,都是Function对象类型的
Function对象接收的所有参数都是字符串类型的,其中最后一个参数就是要执行的函数体,而前面的参数是函数接收的参数
JavaScript中,每个函数都有一个隐含的对象:arguments,表示给函数实际传递的参数。arguments的属性:length,表示给函数赋值的参数个数
通过判断arguments对象的长度,间接实现重载
add的length属性:表示函数期望接收的参数个数
执行结果:
2.JavaScript 5种原始数据类型
Undefined,这个数据类型的值,只有一个:undefined
Null,这个数据类型的值,只有一个:null
Boolean,这个数据类型的值,有两个:true、false
Number
String
3.typeOf运算符:一元运算符,用户获取变量的数据类型。返回值有5个undefined、boolean、number、string、object
4.JavaScript 3种强制类型转换
Boolean(value)
Number(value)
String(value)
5.JavaScript中,可以动态添加对象的属性,也可以动态删除对象的属性
定义对象的另一种方式:由逗号分隔的属性名和属性值
6.JavaScript数组
定义数组的第一种方式:
定义数组的第二种方式:
对于JS数组的sort方法,它会将待排序的内容转换为字符串(调用toString()方法),按照字符串的先后顺序进行排序
如果想对数组元素进行排序,我们需要自己编写排序规则,再把排序规则传递给 sort 方法
7.匿名函数
8.JS中定义对象的几种方式
(1)基于已有对象,扩充其属性和方法
提示框显示的是:lisi
(2)工厂方式
带参数的构造函数方式
对上述代码进行改进,期望多个对象共享同一个方法
(3)构造函数方式定义对象
在构造对象时,让函数带参数:
(4)原型(prototype)方式定义对象
单纯使用原型方式定义类,无法在构造函数中,为属性赋初值,只能在对象生成后,再改变属性值
运行结果:修改之后的“lisi,123”、未修改的“zhangsan,123”
将username改成数组
运行结果:“zhangsan,lisi,456”、“zhangsan,lisi,123”
为什么没有对username的值进行修改,但是person2也改变了?
原理:把属性附加到原型属性上面,声明的p1和p2分别指向两个Person对象,通过原型定义的对象属性,只有一份,所有的对象共享属性。一个对象改变了,该属性也会反映到其他对象中
结合构造函数方式,对原型方式进行改进
运行结果:“zhangsan,123”、“lisi,123”
(5)动态原型方式定义对象 把方法定义在构造函数里,但是同时保证方法共享,方法只在第一次时创建
在构造函数中,通过 标志量 让所有对象共享一个方法,而每个对象拥有自己的 属性
- #笔记#圣思园 JavaWeb 第53讲——function对象、工厂方式、构造函数方式、原型方式定义对象
- #笔记#圣思园 JavaWeb 第57讲——JS继承:对象冒充、call方法、apply方法、原型链方式、混合方式
- js 创建对象的三种方式——工厂模式、构造函数模式、原型模式
- JavaScript——创建对象的五种方式分析(工厂模式 原型 构造函数)
- javascript工厂方式、构造函数、原型方式
- javascript工厂方式、构造函数、原型方式
- 面向对象--工厂方式和构造函数
- javascript 构造函数方式定义对象
- JavaScript对工厂模式、构造函数、原型、字面量方式、继承、对象冒充的理解
- Javascript对象的工厂方式,原型方式,混合方式
- javascript定义类或对象:混合的构造函数/原型方式
- JavaScript学习12 JS中定义对象的几种方式(原型和构造函数)
- JS面向对象的几种创建方式:工厂模式、构造函数模式、原型模式、混合模式、动态原型模式
- JavaScript中常见的几种创建对象的方式:基于对象扩充属性和方法、基于工厂方式创建对象、基于构造函数和基于原型
- javaScript动态原型的方式定义对象
- javascript 构造函数方式 对象
- JS中定义对象方式三: 使用构造函数方式创建对象
- 17、JavaScript之工厂方式定义对象
- 神级代码编辑器 Sublime Text 全程指南
- UIWebView与JavaScript相互调用
- mac 中安装git
- Android scrollview中有EditText ,需要EditText 滑动时
- iOS 各种控件默认高度
- #笔记#圣思园 JavaWeb 第53讲——function对象、工厂方式、构造函数方式、原型方式定义对象
- Demo and Test Setup Guide - OFBiz Project Administration Workspac
- CODE[VS] 1099 字串变换
- java web项目运行出现java.lang.NoSuchFieldError: deferredExpression解决方法!
- 躺在夏威夷 用一百种方法挥霍时光
- 关于指针
- 【从零单排之微软面试100题系列】20之把字符串转换成整数
- Hadoop生态圈学习记录
- 程序员面试宝典一周目第二天