【前端学习笔记03】JavaScript对象相关方法及封装
//Object.create()创建对象
var obj = Object.create({aa:1,bb:2,cc:'c'});
obj.dd = 4;
console.log(obj.cc); // c
console.log(obj.hasOwnProperty("cc")); //false
console.log(obj.hasOwnProperty("dd")); // true //仿Object.create()方法创建CreateObject函数
var obj = {aa:1,bb:2,cc:'c'};
function CreateObject(proto){
function F(){};
F.prototype = proto;
return (new F);
}
var newObj = CreateObj(obj); //构造函数和原型结合创建对象举例
function Circle(r){
this.r = r;
}
Circle.prototype.circum = function(){
return (2*this.r*Math.PI).toFixed(2);
}
Circle.prototype.area = function(){
return (Math.pow(this.r,2)*Math.PI).toFixed(2);
} var c = new Circle(3);
console.log(c.circum());
console.log(c.area()); //复制一个对象
function copyObj(obj){
var newObj = {};
for(key in obj){
newObj[key] = obj[key];
}
return newObj;
} //类继承举例
//创建父类
function Father(){
this.familyName = 'Zhu';
this.money = 20;
}
//父类原型
Father.prototype.have= function(){
return 'I have $'+this.money+'.'
}
//创建子类
function Child(){
Father.apply(this,arguments);
this.toy = 'car';
}
//子类原型等于父类构造的新对象
Child.prototype = new Father();
//子类的构造函数重定向
Child.constructor = Child;
//子类可创建自己的方法
Child.prototype.play = function(){
return 'I play with a '+this.toy+'.'
}
//基于子类创建新对象
var child = new Child(); //extend方法 对象扩展
function extend(target,source){
for(k in source){
target[k] = source[k];
}
return target;
}
【前端学习笔记03】JavaScript对象相关方法及封装的更多相关文章
- 【知了堂学习笔记】/JavaScript对象--/暖妮
JavaScript对象 1.什么是JavaScript对象? JavaScript 中的所有事物都是对象:字符串.数字.数组.日期,等等. 在 JavaScript 中,对象是拥有属性和方法的数据. ...
- 【前端学习笔记】JavaScript JSON对象相关操作
//JSON方法 //JSON.parse(); var json = '{"name":"zj","age":23}'; JSON.par ...
- 前端学习笔记之JavaScript
JavaScript概述 JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中),后将其改名ScriptEase(客 ...
- Web前端学习笔记之JavaScript、jQuery、AJAX、JSON的区别
官网的英文解释: javascript和jQuery有点关系,js是一种脚本语言,主要用于客户端,现在主要用于实现一些网页效果. jquery是js的一个库,你可以认为是对js的补充,提供了很多方便易 ...
- 1.3 (JavaScript学习笔记)JavaScript对象
在JavaScript中所有事物都是对象,字符串.数值.数组.函数...等, JavaScript还允许自定义对象.这些在1.1中有所介绍. 一.遍历对象属性 <!DOCTYPE html> ...
- 【前端学习笔记】JavaScript 小案例合集
获取一个0-9的随机数: Math.round(Math.random()*9); 去除数组中重复的元素: var arr=[1,3,5,4,3,3,1,4] function editArr(arr ...
- 【前端学习笔记】JavaScript 常用方法兼容性封装
获取样式函数封装 function getStyle(ele,attr){ if(ele.currentStyle){ return ele.currentStyle[attr]; } else{ r ...
- 前端学习 第二弹: JavaScript中的一些函数与对象(1)
前端学习 第二弹: JavaScript中的一些函数与对象(1) 1.apply与call函数 每个函数都包含两个非继承而来的方法:apply()和call(). 他们的用途相同,都是在特定的作用域中 ...
- 学习笔记:Javascript 变量 包装对象
学习笔记:Javascript 变量 包装对象 如下代码,可以输出字符的长度. var str = "Tony"; str.length; 这时再试试以下代码,返回是 undefi ...
随机推荐
- 20155230 实验三《敏捷开发与XP实践》实验报告
20155230 实验三<敏捷开发与XP实践>实验报告 一.使用工具(Code->Reformate Code)把代码重新格式化 IDEA里的Code菜单有很多实用的功能可以帮助我们 ...
- 20155304 2016-2017-2 《Java程序设计》第八周学习总结
20155304 2016-2017-2 <Java程序设计>第八周学习总结 教材学习内容总结 NIO NIO使用频道来衔接数据节点,在处理数据时,NIO可以让你设定缓冲区容量,在缓冲区中 ...
- 20145207 实验二《Java面向对象程序设计》实验报告
20145207 实验二<Java面向对象程序设计>实验报告 实验内容 1.初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承.多态 3.初步掌握UML建模 4.熟悉S.O ...
- 深入Redis 主从复制原理
原文:深入Redis 主从复制原理 1.复制过程 2.数据间的同步 3.全量复制 4.部分复制 5.心跳 6.异步复制 1.复制过程 从节点执行 slaveof 命令. 从节点只是保存了 slaveo ...
- [note]左偏树(可并堆)
左偏树(可并堆)https://www.luogu.org/problemnew/show/P3377 题目描述 一开始有N个小根堆,每个堆包含且仅包含一个数.接下来需要支持两种操作: 操作1: 1 ...
- 【SQLSERVER】索引的维护优化
一.索引的利弊 优点: 1.大大加快数据的检索速度: 2.创建唯一性索引,保证数据库表中每一行数据的唯一性: 3.加速表和表之间的连接: 4.在使用分组和排序子句进行数据检索时,可以显著减少查询中 ...
- 移动端推广APP防作弊机制之依我见
本文来自网易云社区 在广告投放过程中,虚假流量常常给广告运营人员带来麻烦,影响广告投放的效果,如何预防作弊,不妨先来重现一下流量产生的场景,用户点击广告之后,一般都会落到广告主的网页,或者安装广告主的 ...
- 基于testng自动化添加allure报告展示以及jenkins集成
本地执行方式: 1.下载地址 http://allure.qatools.ru/ 2.执行机器添加环境变量 如mac:vi /etc/profile export ALLURE_HOME=/Users ...
- Scrapy爬取美女图片第三集 代理ip(下)
这是我的公众号获取原创保护的首篇文章,原创的肯定将支持我继续前行.现在写这篇文章的时间是晚上11:30,写完就回寝室休息了,希望更多的朋友与我一起同行(当然需要一个善良的妹子的救济).(我的新书< ...
- 车牌,车架号,VIN码毫秒识别技术,汽车后市场的春天到来了
vin码(车架号)识别运用 不仅在制造.销售.保养.保险.车辆评估.交易环节会需要录入汽车的VIN码,在交通事故处理中,作为汽车身份唯一识别码,VIN码是处理事故的执法人员必须要记录的信息之一.随着汽 ...