关于构造函数什么值传递给他的实例,只有this和prototype
var a= function (){var bb = 12; this.aa ="xxx"};
a.aa="www";
a.prototype.cc="eee";
var b = new a;
for (var i in b){
console.log(b[i]);
}
console.log (b)
console.log(b.aa)
console.log(b.bb)
xxx
eee
a {aa: "xxx", cc: "eee"}
xxx
undefined
var a= function (){var bb = 12; this.aa ="xxx"};
a.aa="www";
a.prototype = "eee";//1 或者“ss” new Number(1111) function(){this.cc="ddd"};
;
如果将prototype 不赋值为object,而是赋值为原始值,prototype不会传递给实例
xxx
a {aa: "xxx"}
xxx
undefined
var a= function (){var bb = 12; this.aa ="xxx"};
a.aa="www";
a.prototype = new Number(1111);
var b = new a;
for (var i in b){
console.log(b[i]);
}
console.log (b)
console.log(b.aa)
console.log(b.bb)
xxx
a {aa: "xxx"}
xxx
undefined
var a= function (){var bb = 12; this.aa ="xxx"};
a.aa="www";
a.prototype = new String("11111");
var b = new a;
for (var i in b){
console.log(b[i]);
}
console.log (b)
console.log(b.aa)
console.log(b.bb)
xxx
5undefined
a {aa: "xxx", 0: "1", 1: "1", 2: "1", 3: "1", 4: "1"}
xxx
undefined
new String,相当于使用数组对象存储的,但是遍历不出来值。
var a= function (){var bb = 12; this.aa ="xxx"};
a.aa="www";
a.prototype = [1,2];
var b = new a;
for (var i in b){
console.log(b[i]);
}
console.log (b)
console.log(b.aa)
console.log(b.bb)
xxx
1
2
[aa: "xxx", 0: 1, 1: 2]
xxx
undefined
prototype就是{},实例化的对象,key value形式的,其他的都不行,不做传递。
var a=[1,2,3];
for(var i in a){
console.log(typeof i);
console.log(a[i]); }
string
1
string
2
string
3
数组的下标和对象一样,都是stirng
var a=[1,2,3];
for(var i in a){
console.log(typeof i);
console.log(a[i]); }
var b={0:a,1:b}
console.log(b[0])
console.log(b[1])
string
1
string
2
string
3
[1, 2, 3]
undefined
这就是数组的基本方式,
在对象中,如果是数组方式当key,不能使用b.1或者b."1",会报语法错误,跟array保持一致了
b[0]===b["0"] 为ture
总结:
只有this,prototype的值传递给实例,其中prototype必须是key-value的形式才传递,就是实例化后的,
数组和object的关系就是都一致的。
关于构造函数什么值传递给他的实例,只有this和prototype的更多相关文章
- new 运算符创建一个用户定义的对象类型的实例或具有构造函数的内置对象的实例。
new运算符 - JavaScript | MDN https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operator ...
- python接口测试:如何将A接口的返回值传递给B接口
在编写接口测试脚本时,要考虑一个问题:参数值从哪里获取 一种方式是可以通过数据库来获取,但是通过这次接口测试,我发现读取数据库有一个缺点:速度慢 可能和我的sql写法有关,有些sql加的约束条件比较少 ...
- art.dialog.art 中,将子页面窗口中的值传递给父框架中
artDialog.open.origin.document.getElementById('父元素ID').value=document.getElementById('子页面元素ID').valu ...
- Postman----登录接口返回的reponse中token值传递给其他接口的一个简单接口测试示例
注: 在进行接口测试时,我们都需要使用登录,并且其他的接口都要在登录后进行,那么必不可少的会使用到将登录接口的reponse返回结果中的某些参数值需要进行返回,并传递给其他接口,这样才可以进行登录后的 ...
- Net设计模式实例之原型模式( Prototype Pattern)
一.原型模式简介(Brief Introduction) 原型模式(Prototype Pattern):用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象. Specify the kin ...
- Spring 学习指南 第三章 bean的配置 (未完结)
第三章 bean 的配置 在本章中,我们将介绍以下内容: bean 定义的继承: 如何解决 bean 类的构造函数的参数: 如何配置原始类型 (如 int .float 等) .集合类型(如 ja ...
- JS学习:第一周——NO.3面向对象
[面向对象基础知识] 封装:对于功能相同的代码,我们只需封装一次,以后再遇到类似的功能,只需调用即可,无需重写,避免大量冗余代码. 对象的特征:方法和属性: 面向对象的特点: 封装:低耦合高内聚: 继 ...
- js 中的原型prototype
每次创建新函数,就会根据规则为该函数创建一个 prototype 属性,该属性是一个指向函数原型对象的指针.并且原型对象都默认拥有一个 constructor 属性,该属性是一个指向那个新建函数的指针 ...
- 进击JavaScript核心 --- (3)面向对象
JS中的对象定义为:无序属性的结合,其属性可以包含基本值.对象或者函数 1.定义对象的方式 (1).Object构造函数 var student = new Object(); student ...
随机推荐
- Retrofit实现PUT网络请求,并修改Content-Type
@FormUrlEncoded @PUT(Constant.BOSS_HX_CHANGE_PHONE_INTERVIEW) Call<ResponseHxResultBean> handl ...
- Java学习笔记之log4j与commons-logging<转>
Java学习笔记之log4j与commons-logging<转> (2011-02-16 11:10:46) 转载▼ 标签: 杂谈 分类: 技术学习之其他 Logger来自log4j自己 ...
- 服务器php-cgi.exe进程过多,导致CPU占用100%的解决方法
再使用iis服务器中经常会出现php-cgi.exe进程过多,导致CPU占用100%,最终造成网站运行过慢甚至卡死的情况,重启iis会好一会,过一段时间久出现这种情况,为什么会出现这种情况呢,应该怎么 ...
- net MVC 四种基本 Filter
四种基本 Filter 概述 MVC框架支持的Filter可以归为四类,每一类都可以对处理请求的不同时间点引入额外的逻辑处理.这四类Filter如下表: 使用内置的Authorization Fi ...
- 简要记录下localStorage在项目中的应用之一
localStorage作为HTML5本地存储web storage特性的API之一,主要作用是将数据保存在客户端中.localStorage保存的数据,一般情况下是永久保存的,也就是说只要采用loc ...
- Debian9镜像安装问题
Debian9下载地址 https://www.debian.org/distrib/ Debian9有三个镜像文件 第一个包含系统2.3两个主要是一些软件的安装包只需下载第一个安装系统即可 默认安装 ...
- 为sublime Text3 安装插件JS Format
1. 安装package control 菜单 View - Show Console 或者 ctrl + ~ 快捷键,调出 console.将以下 Python 代码粘贴进去并 enter 执行,不 ...
- element ui select组件和table做分页完整功能和二级联动效果
<template> <div class="index_box"> <div class="search_box"> &l ...
- JavaScript-条件循环
JavaScript-条件循环 条件判断语句 if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码 if (表达式){ 当条件为 true 时执行的代码} if...else 语 ...
- faster rcnn的改进方向
http://blog.csdn.net/linolzhang/article/details/74159463 http://blog.csdn.net/linolzhang/article/det ...