从零开始的全栈工程师——JS面向对象( 六大继承 )
2024-10-21 15:30:42
一、对象克隆
var obj = {
name:'li',
age:23
}
var obj2 = obj;
// 这不是对象克隆 只是把obj的内存地址给obj2
1.for in克隆(浅拷贝) 浅拷贝 --> 主要针对第一层的属性进行拷贝
通过for in克隆 不管是私有的还是公有的 都克隆成私有的
2.for in克隆(深拷贝) 深拷贝 --> 将属性值也一个一个的遍历赋值
针对所有的属性进行拷贝不管套了几层 如果对象中的属性值又是一个引用数据类型 浅拷贝 还是把后面的引用数据类型的地址赋值给空对象的一个属性
3.Object.create( )
js提供了一个克隆的方法 Object.create( ) 将obj的所有属性克隆到obj2的原型上
二、继承
1.原型继承 --> 将父类的私有和公有属性都继承为子类的公有属性
2.call继承 --> 将父类的私有属性继承为子类的私有属性
3.冒充对象继承 --> 将父类私有的和公有的都继承为私有的
4.混合继承 --> 利用call继承和原型继承 私有的继承私有 公有继承私有和公有
5.组合继承 --> 利用call继承和克隆对象 私有继承私有 公有继承公有
6.中间类继承 --> 使其他数据类型也可以使用其他内置对象的方法 赋值为内置类的原型
最新文章
- 深入理解javascript原型和闭包(17)——补this
- Quartus 11.0 的AS 下载方式和JTAG下载jic文件的方式
- 【Apache】2.4.6版本的安装和配置
- Masonry 固定宽度 等间距
- DeleteDC() 与 ReleaseDC() 的区别 [转]
- mac下安装mysql 连接时候报错 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
- cf493A
- Linux企业级开发技术(1)——epoll企业级开发之简介
- 关于cvScalar的那些事
- linux脚本: makefile以及链接库
- 具体解释首页被K后SEOer必做的三大排除方法!
- linux 命令展示该目录下的所有子目录及文件结构 tree
- c++STL排序算法注意事项
- Wrong FS: hdfs://......, expected: file:///
- tomcat下服务启动失败原因
- Java 数据类型与运算符
- Python杂写1
- emmc基础技术8:操作模式4-data transfer mode
- word中加入endnote
- dataset to list
热门文章
- 3. C/C++笔试面试经典题目三
- 手机端file限制只能选择图片、视频、音频,直接打开摄像头拍照或录像
- 将form转为ajax提交的js代码
- jenkins安装maven工具
- FPGA基础学习(3) -- 跨时钟域处理方法
- python学习之路---day25( 网络编程基础和初识socket)
- HDU - 6183 动态开点线段树 || 令人绝望的线段树
- 经常谈到Oracle的权限,你究竟知道多少
- hdu1286 找新朋友 欧拉函数模板
- C++ GUI Qt4编程(03)-1.3layout