侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

js 的 prototype

2024-05-14 星期二 / 0 评论 / 0 点赞 / 74 阅读 / 2253 字

本文只是个人写的一些笔记 不做教学 也没资格教别人 如果有大神看到有什么不对的地方欢迎指正 自学坑很多js对象分两种 一种是普通对象 一种是函数对象//函数对象function f1(){};

本文只是个人写的一些笔记 不做教学 也没资格教别人 如果有大神看到有什么不对的地方欢迎指正 自学坑很多

js对象分两种 一种是普通对象 一种是函数对象

//函数对象function f1(){};var f2 = function(){};var f3 = new Function();//普通对象var o4 = {};var o5 = new Object();var o6 = new f1();//验证console.log(typeof f1);  //functionconsole.log(typeof f2);  //functionconsole.log(typeof f3);  //functionconsole.log(typeof o4);  //objectconsole.log(typeof o5);  //objectconsole.log(typeof o6);  //object

对象的prototype

console.log(typeof f1.prototype); //Objectconsole.log(typeof f2.prototype); //Objectconsole.log(typeof f3.prototype); //Objectconsole.log(typeof o4.prototype); //undefinedconsole.log(typeof o5.prototype); //undefinedconsole.log(typeof o6.prototype); //undefined

函数对象都有 prototype 属性 指向了一个Object(普通对象)普通对象的prototype 指向了 undefined 也是原型的终点

单独说说Object Function两个对象Function.prototype 还是 function 再往上 就是undefined 了

onsole.log(typeof Object); //functionconsole.log(typeof Function); //functionconsole.log(typeof Object.prototype); //objectconsole.log(typeof Function.prototype); //functionconsole.log(typeof Function.prototype.prototype); //undefined

理解一下这段代码

//定义一个函数o10var o10 = function(){  this.name = "haha";}//为函数的原型对象添加新属性o10.prototype.say = function(){  console.log(this.name);}//实例化函数对象 并调用方法 本身没有say 那么 调用原型的sayvar o11 = new o10();o11.say();  //haha//定义一个函数o12 并制定 o12 的原型对象为 o11var o12 = function(){};o12.prototype = o11;//实例化 o12 并调用sayvar o13 = new o12();o13.say();//haha//为o12的原型添加新的say方法o12.prototype.say = function(){  console.log("iiiiiii");}o13.say();//iiiiiii

广告 广告

评论区