js中最重要的是:原型对象 普通对象和函数对象 构造函数
1.var lists=[{name:"jiali",age:28},{name:"jia",age:30},{name:"ki",age:30}];
var listCopy=JSON.parse(JSON.stringify(lists));
listsCopy[1]="aaa";
listsCopy;//索引1变了{name:"aaa",age:30}
lists//
2.var arr=[{x:1,y:3,z:r},{a:3,b:5,c:6},{1:6,m:8,n:9}];
arr.forEach(function(item,index){
for(i in item){
if(i=="x"{
console.log("1");
else{
console.log("2")}
}}
})
第二种方法:
arr.forEach(function(item,index){
if(item.hasOwnProperty("x")){
consle.log("1");
})
3重点就是原型
3.1
function Person(){}//空的函数对象
Person.prototype.name="jiai";
Person.prototype.age=20;
var person1=new Person();
var person2=new Person();
person1.name;
3.2
var cat={};//创建一个空的对象
cat.name="jiaji";
cat.color="blue";
var cat1={};
cat1.name="xiaoh";
cat1.color="hong";
函数封装
function cat(name,color){//普通函数
return{
name:name,
color:color
}
var cat1=cat("xiaoh","红色");
var cat2=cat("jiali","baise");
cat1.name;
};
4,构造函数和普通函数的区别
1,通过new
functon Cat(name,color){
this.name=name;
this.color=color;
//this.type="动物";//这是公共类这个不是最优的
//this.eat=function(){//这也是公共类的
console.log("爱吃老鼠");
}
};
Cat.prototype.type="动物";
Cat.prototype.eat=function(){
console.log("吃老鼠");
}
var cat1=new Cat("xiaoming","yellow");
cat1.name;
5。prototype
prototype中存入公共类的,这个是最优的
6.prototype验证
//in 不管自身属性还是原型属性都返回true;
//hasOwnPrototype 自身的属性为true 原型属性返回为false
console.log("name" in cat1);//true;
console.log("type" in cat1);//true
console.log(cat1.hasOwnProtype("name"));//true;
console.log(cat1.hasOwnProtype("type"));//false;
7.最为重要的,构造函数的继承,可以形成一个关系链
function Animal(){//动物对象
this.type="动物";
};
function Cat(name,color){
this.name=name;
this.color=color;
};
//apply()在一个对象中调另一个对象apply(this,参数)传数组
//call()也是在一对象调另一个对象 一个一个传
function Cat(name,color){
Animal.apply(this);//将 父对象的构造函数绑定在了子对象上 this相当于父类,改变了作用域
this.name=name;
this.color=color;
};
var cat1=new Cat("jia","yellow")
console.log(cat1.type);
。。。//prototype
function Animal(){//动物对象
//this.type="动物";
};
Animal.prototype.type="动物";//封装和插件用的比较多
function Cat(name,color){
this.name=name;
this.color=color;
};
Cat.prototype=new Animal();猫继承了动物的属性
var cat1=new Cat("jia","yellow")
console.log(cat1.type);//动物
转载于:https://www.cnblogs.com/christinejia/p/9125605.html
js中最重要的是:原型对象 普通对象和函数对象 构造函数相关推荐
- JS中prototype、__proto__以及原型链
1.对象的三角恋关系 1.每个"构造函数"中都有一个默认的属性, 叫做prototype prototype属性保存着一个对象, 这个 对象 称之为"原型对象" ...
- js中数据结构数组Array、映射Map、集合Set、对象、JSON
全栈工程师开发手册 (作者:栾鹏) js系列教程5-数据结构和算法全解 js中数据结构 js中原生自带的数据结构比较简单,主要有数组Array.映射Map.集合Set.我们可以根据这三个基本数据结构实 ...
- 18函数对象19command模式20函数对象在STL中的应用
Item 18. Function Objects Item 19. Commands and Hollywood Item 20. STL Function Objects 1.unction Ob ...
- 函数对象、 函数对象与容器、函数对象与算法
一.函数对象 1.函数对象(function object)也称为仿函数(functor) 2.一个行为类似函数的对象,它可以没有参数,也可以带有若干参数. 3.任何重载了调用运算符operator( ...
- 从零开始学C++之STL(八):函数对象、 函数对象与容器、函数对象与算法
http://blog.csdn.net/jnu_simba/article/details/9500219 一.函数对象 1.函数对象(function object)也称为仿函数(functor) ...
- 3-3:类与对象中篇——默认成员函数之构造函数和析构函数
文章目录 一:类的默认6个成员函数 二:构造函数 (1)构造函数的概念 (2)构造函数注意事项 三:析构函数 (1)析构函数的概念 (2)析构函数注意事项 一:类的默认6个成员函数 如果一个类里面什么 ...
- JS 中的 this
JS中的this 本文是本人阅读MDN文档和Dmitri Pavlutin的博客后写下的this学习笔记, 主要翻译自Dmitri Pavlutin的博客 Gentle Explanation of ...
- js中原型,原型链,原型链继承的个人理解
一.什么是原型? 每一个javascript对象在创建的时候就会有一个与之关联的对象B产生,对象B就是所说的"原型". 1)原型也是一个对象,其他对象可以通过原型实现属性继承, 2 ...
- 前端 ---JS中的面向对象
JS中的面向对象 创建对象的几种常用方式 1.使用Object或对象字面量创建对象 2.工厂模式创建对象 3.构造函数模式创建对象 4.原型模式创建对象 1.使用Object或对象字面量创建对象 JS ...
- js 中的可枚举属性
前言 首先,可枚举属性是指那些内部 "可枚举" 标志设置为 true 的属性,而这个"可枚举"标志,即enumerable. 对于通过直接的赋值和属性初始化的属 ...
最新文章
- 3_HEIF/heic格式图片文件解析(20190107)
- 1704:baoge的洗漱难题[黄]
- 滞后分析rstudio_使用RStudio进行A / B测试分析
- 判断大小简单算法_算法浅谈——人人皆知却很多人写不对的二分法
- sql server 向mysql前移数据-单引号问题
- Linux---僵尸进程的解决办法
- 设备和驱动器中删除空白图标
- 北京市城八区廉租住房和经济适用住房保障家庭收入、住房、资产标准已确定
- 计算机控制实验 实验十,自控计控原理实验箱
- numpy的array()函数
- 战地5未能达到服务器带宽,《战地5》游戏bug汇总以及解决方案介绍
- 英文学术写作:摘要(Abstracts)
- vue+element实现美观大方好看的音乐网站,仿照咪咕音乐网
- 中国传媒发展十大趋势
- c语言勾股定理已知斜边,C语言 · 勾股数
- Linux如何设置邮件消息大小,sendmail限制用户发送的邮件的大小
- 你们要的Java学习路线图,来喽
- 吊打面试官,笑对 2022 金三银四,2022年最全面试真题大汇总
- 模拟电子技术(八)功率放大电路
- Springboot 集成 Activiti时启动报错!'org.activiti.spring.boot.SecurityAutoConfiguration
热门文章
- questasim编译报error: Declarations must precede statements. Look for stray semicolons.
- autoCAD 使用图层、颜色和线型
- EXCEL表格复制到空白的EXCEL表格变形 解决方法
- 转录组测序分析项目及方法汇总(更新中)
- matlab 元素 最大值和最小值,[转载]matlab中的最大值和最小值
- qt 两界面类操作另外一个界面的的ui控件;以及会出现的the class containing “ui::XXX”cound not be found...Please verify the .
- D. Count GCD
- 记号, 函数空间及不等式
- html设置一级标题二级标题格式怎么弄,论文一二三级标题格式如何设置
- Windows 技术篇-修改电脑时间格式显示为12小时、24小时时间制式方法