文章目录

  • 前端---JavaScript基础3
    • call&apply
    • 原型链
    • 原型链操作
      • 例子:按钮组件封装:(类似于Bootstrsp里的按钮组件封装)

前端—JavaScript基础3

call&apply

//call apply
function Cat(name,color){this.name = name;this.color = color;
}
var cat = new Cat();
var o = {};
//Cat.call(o,"大白","white");
Cat.apply(o,["大白","white"]);
console.log(o.name);

原型链

function People(){this.name = "小王";this.sayName = function(){console.log(this.name);};
}
People.prototype.walk = "walk";
var p1 = new People();
var p2 = new People();
p1.name = "p1";
p2.name = "p2";

原型链操作

//修改原型
function Animal(){this.type= "动物";
}
function Cat(name,color){this.name = name;this.color = color;
}
Cat.prototype = new Animal();
var a = new Cat("小黑","black");
console.log(a._proto_);  //new Animal()
a._proto_.type = "大动物";
console.log(Cat.prototype); //另一种情况
function Animal(){this.type= "动物";
}
Animal.prototype.type2 = "动物2";
function Cat(name,color){this.name = name;this.color = color;
}
Cat.prototype = new Animal();
var a = new Cat("小黑","black");
console.log(a._proto_._proto_);  //
a._proto_._proto_type = "大动物2";
console.log(Cat.prototype._proto_); //复杂原型链
function F1(){this.name1 = "f1";
}
F1.prototype.name = "first";
function F2(){this.name2 = "f2";
}
function F3(){this.name3 = "f3";
}
F2.prototype = new F1();
F3.prototype = new F2();
var ff = new F3();
console.log(ff.name2);
ff._proto_._proto_._proto_.name = "secend";
console.log(F1.prototype); delete ff._proto_._proto_._proto_.name
console.log(F1.prototype);

例子:按钮组件封装:(类似于Bootstrsp里的按钮组件封装)




前端---JavaScript基础4相关推荐

  1. Web前端-JavaScript基础教程上

    Web前端-JavaScript基础教程 将放入菜单栏中,便于阅读! JavaScript是web前端开发的编程语言,大多数网站都使用到了JavaScript,所以我们要进行学习,JavaScript ...

  2. 前端---JavaScript基础3

    文章目录 前端---JavaScript基础3 普通对象与函数对象 原型及属性判断 构造函数继承 原型继承 组合继承 寄生组合式继承 前端-JavaScript基础3 普通对象与函数对象 原型及属性判 ...

  3. 前端---JavaScript基础2

    文章目录 前端---JavaScript基础2 对象类型判断 call函数 对象属性操作 深拷贝方法 前端-JavaScript基础2 重构以下代码:(以面向对象的方式) 重构后:(其中this指针问 ...

  4. 前端---JavaScript基础1

    文章目录 前端---JavaScript基础1 数据类型 面向对象 对象创建方式 对象类型判断 前端-JavaScript基础1 JS是 解释型语言:跨平台 慢 编译型语言:不能跨平台 快 数据类型 ...

  5. Web前端-JavaScript基础教程下

    Web前端-JavaScript基础教程下 <script>有6个属性: async对外部脚本有效,可以用来异步操作,下载东西,不妨碍其他操作. charset为src属性指定字符集. d ...

  6. 前端JavaScript基础知识点

    JavaScript基础 阶段说明 JavaScript基础 Web API JavaScript高级 ##第一天重点内容 变量的声明及使用 数据类型 类型转换 运算符 JavaScript的组成 E ...

  7. 菜鸟学前端--javascript基础

    在学习过css相关的知识,有了前端工程师的一些基础知识.但要较好的掌握前端,必须要学习好javascript的知识. 下面将从基本语法.变量.关键字.保留字.语句.函数.BOM等角度阐释. 一.基本语 ...

  8. 前端JavaScript基础

    目录 JavaScript基础 1:JS概述 1.1:历史: 1.2:现状: 1.3:特点: 1.4:应用场景 2.搭建开发环境 2.1:浏览器: 2.2:服务器端 2.3:运行JS 3.语法规范 4 ...

  9. 前端——javascript基础-ECMAScript

    文章目录 JavaScript简介 ECMAScript JavaScript的引入方式 javascript得输出方式: 变量 五种基本数据类型 运算符 数据类型转换 if语句 switch语句 w ...

最新文章

  1. 依赖注入及AOP简述(一)——“依赖”的概念 .
  2. cascade在java_【Java基础】集合
  3. 电脑端跳转手机版的php代码,帝国CMS电脑端自动跳转到手机端移动端的方法
  4. 【English】Grab-Verify Your Email Address
  5. MySQL命令梳理_MySQL操作命令梳理(1)
  6. TFS2015的CI集成
  7. Linux命令【五】系统函数
  8. 2021.C/C++静态代码分析工具
  9. 两个栈实现队列+两个队列实现栈----java
  10. 快速排序算法思路分析和C++源代码(递归和非递归)
  11. 巧设IP路由 实现不同网段互通
  12. catalina.log localhost.log localhost_access_log.txt manager.log tomcat-stdout.log 文件占用过大,处理方式
  13. Springboot+vue调查问卷管理系统(带论文)
  14. 企立方:为什么拼多多关键词搜不到自己的产品
  15. css中字体下划线样式,css下划线 浅谈css自定义下划线
  16. 跳板机的工作原理和简单的跳板机实现
  17. 函数式编程#3纯函数的概念
  18. EAUML日拱一卒-活动图::OMG UML2.5中文译文 16.12 Expansion Regisons
  19. 我在阿里做测试这5年总结的7条生存经验。
  20. kicad最小布线宽度默认是多少_PCB布线设计,提高有一套完整的方法

热门文章

  1. 通俗易懂的讲解堆排序(含Gif图)
  2. 1073 多选题常见计分法 (20 分)_66行代码AC
  3. 【简便代码】1082 射击比赛 (20分)_17行代码AC
  4. 进程P1、P2、P3、P4和P5的前趋图如下图所示。若用PV操作控制进程P1~P5并发执行的过程,则需要设置6个信号S1、S2、S3、S4,且信号量S1~S4的初值都等于0。下图中a和b处应分别填写(
  5. 24行代码AC_蓝桥杯2019省赛 试题 D: 数的分解
  6. java如何接受字符_java中string怎么获取指定位置的字符
  7. 修改Jtable字体颜色
  8. 独占一行 html_HTML基础-语义化标签
  9. linux内存管理分析 二,linux内存管理分析【二】
  10. linux 添加用户_linux ---添加普通用户账号