prototype.原型链.原型链图
//1.几乎所有函数都有prototype属性,这个是个指针,指向原型对象;Function.prototype这个没有//2.所有对象中都有__proto__属性.(Object.prototype该属性的值为null)//几乎所有函数都有 prototype/__proto__属性//3.函数都是Function的实例(函数是通过Function创建出来的对象)//自定义函数,Function,Array,RegExp,String,Boolean,Number,Object都是函数,都是通过Function创建出来的//4.几乎所有函数都继承自:Function.prototype//函数.__proto__===Function.prototype(除了Function.prototype本身,他没有prototype属性)//Object.__proto__===Function.prototype//Function.__proto__===Function.prototype//5.String.prototype.__proto__===Object.prototype// Array.prototype.__proto__===Object.prototype// Number.prototype.__proto__===Object.prototype// RegExp.prototype.__proto__===Object.prototype// Function.prototype.__proto__===Object.prototype
function fn(){returnthis;}var f3=new fn();console.log(f3);//fn//return {name:"张三"};//此时构造函数的返回值是一个对象就不再使用默认的返回值了,返回值就是当前的对象function fn2(){}var f2 =new fn2();console.log(fn2);//fn2的实例//如果没有返回值,会是默认的返回值//如果返回值是基本数据类型的话,还是会使用默认的返回值
function fn(){}console.log(fn.constructor);//Functionconsole.log(fn.__proto__===Function.prototype);//trueconsole.log(Object.__proto__===Function.prototype);//trueconsole.log(Function.prototype===fn.__proto__);//trueconsole.log(Object.constructor);// Functionconsole.log(fn.prototype.constructor);//fnconsole.log(Function.prototype.__proto__.constructor);// Object


var arr=["hello","say","pic"];var str3;//undefinedfor(var i=0;i<arr.length;i++){str3+=arr[i];//如果一个变量str3声明了没有赋值会有默认的值undefined如果参与运算的话就会出问题//所以以后再声明变量之后要给初始化的值}console.log(str3);//undefinedhellosaypicconsole.log(undefined+"abc");//变为一个字符串undefined abc
prototype.原型链.原型链图的更多相关文章
- javascript原型与原型链,prototype、__proto__、constructor
javascript通过构造函数(constructor)和原型链来(prototype chain)实现其他面向对象语言的类概念.ES6语法中引入了“类”(class)的概念,但只是一个语法糖,只是 ...
- js原型和原型链,以及__proto__、prototype属性
__proto__和prototype属性: 1.__proto__属性: 在JS里,万物皆对象(函数是对象.原型也是对象...).对象都具有属性__proto__,这个属性会指向该对象的原型. 2. ...
- 一张图弄懂js原型和原型链
前言 JavaScript的原型和原型链是面试的时候经常被问及到的问题,考察了我们对JavaScript的基础掌握情况,今天我们在这里用一张图来梳理下其中的知识点. 下面我来引入这张非常经典的图,我也 ...
- 275 原型与原型链:显式原型prototype ,隐式原型__proto__,隐式原型链,原型链_属性问题,给原型对象添加属性/方法
1.所有函数都有一个特别的属性 prototype : 显式原型属性 [普通构造函数的实例对象没有prototype 属性,构造函数有__proto__属性,原型对象有__proto__属性 ] 2. ...
- 继承:《原型和原型链(prototype 属性使您有能力向对象添加属性和方法。)》
二. 原型对象 在JavaScript 中,每当定义一个对象(函数)时候,对象中都会包含一些预定义的属性.其中函数对象的一个属性就是原型对象 prototype.注:普通对象没有prototype ...
- 原型及原型链,以及prototype和__proto__属性(笔记便于以后复习)
首先,js的数据结构有 原始类型(5种):Boolean.Number.String.Null.Underfined, 然后是引用类型:Array.Date.Error.RegExp.Function ...
- 你不知道的JavaScript--Item15 prototype原型和原型链详解
用过JavaScript的同学们肯定都对prototype如雷贯耳,但是这究竟是个什么东西却让初学者莫衷一是,只知道函数都会有一个prototype属性,可以为其添加函数供实例访问,其它的就不清楚了, ...
- JavaScript prototype原型和原型链详解
用过JavaScript的同学们肯定都对prototype如雷贯耳,但是这究竟是个什么东西却让初学者莫衷一是,只知道函数都会有一个prototype属性,可以为其添加函数供实例访问,其它的就不清楚了, ...
- JS prototype chaining(原型链)整理中······
初学原型链整理 构造器(constructor).原型(prototype).实例(instance); 每一个构造器都有一个prototype对象,这个prototype对象有一个指针指向该构造器: ...
- Object.prototype 原型和原型链
Object.prototype 原型和原型链 原型 Javascript中所有的对象都是Object的实例,并继承Object.prototype的属性和方法,有些属性是隐藏的.换句话说,在对象创建 ...
随机推荐
- 262K Color
262K色=2^18=262144色. 320*240是指屏幕分辨率. 你可以理解为一块黑板,这款黑板宽是3.2M,长是2.4米,以1cm为最小单位,整个黑板被分为320*240个小格子,这个小格子里 ...
- 7、c++版,在大学学的编程基础知识
1.各种排序 #include<iostream> using namespace std; //-------直接插入排序 void InsertSort(ElemType A[],in ...
- 【lua学习笔记】——Notepad++ 设置运行 lua 和 python
一.设置 run -> 设置 cmd /k lua "$(FULL_CURRENT_PATH)" & PAUSE & EXIT 二.原理: cmd /k ...
- 深浅拷贝, for循环小知识点 str操作 list的删除问题,类型转换
深浅拷⻉ : lst1 = ["⾦⽑狮王", "紫衫⻰王", "⽩眉鹰王", "⻘翼蝠王"] lst2 = lst1 ...
- python- 粘包 struct,socketserver
黏包 黏包现象 让我们基于tcp先制作一个远程执行命令的程序(命令ls -l ; lllllll ; pwd) res=subprocess.Popen(cmd.decode('utf-8'), sh ...
- iview 的table组件,自带过滤功能
html : <Table :columns="people" :data="scores"></Table> data: people ...
- Raspberry Pi 4B 安装QT5和qtCreator
https://blog.csdn.net/coekjin/article/details/52049273 sudo apt-get install qt5-default sudo apt-get ...
- SQL中的DDL、DML、DCL、TCL
1.DDL(Data Definition Language)数据库定义语言statements are used to define the database structure or schema ...
- js数组去重练习
- 解决码云未配置公钥问题——fatal: Could not read from remote repository.
使用码云,键入“git push -u origin master” ,遇到如下问题: fatal: Could not read from remote repository.(致命:不能读远端仓库 ...