【前端学习笔记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 ...
随机推荐
- 20155207 2016-2017-2 《Java程序设计》第十周学习总结
20155207 2016-2017-2 <Java程序设计>第十周学习总结 教材学习内容总结 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据. 狭义的网络编程范畴 ...
- vagrant boxes
vagrant box add hashicorp/precise64
- [BZOJ4011][HNOI2015]落忆枫音-[dp乱搞+拓扑排序]
Description 传送门 Solution 假如我们的图为DAG图,总方案数ans为每个点的入度In相乘(不算1号点).(等同于在每个点的入边选一条边,最后一定构成一棵树). 然而如果加了边x- ...
- 1126: [POI2008]Uci
1126: [POI2008]Uci https://lydsy.com/JudgeOnline/problem.php?id=1126 分析: dp.状态很妙,就是有点难写. 能走的是一个矩形.首先 ...
- svn 冲突处理
C:\workspace\test>svn upConflict discovered in 'test.txt'.Select: (p) postpone, (df) diff-full, ( ...
- java 定义三分钟之前的时间
public String getCurrentTime(){SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ...
- python的rtree包缺失libspatiaindex.so
1 准备autoconf工具 yum -y install autoconf automake libtool 2 准备g++编译器 yum -y install gcc gcc-c++ 3 下载并安 ...
- sql server 查询所有被锁表并批量解除
废话不多说,直接上代码: --查询被锁表 select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) table ...
- mysql 数据库优化之执行计划(explain)简析
数据库优化是一个比较宽泛的概念,涵盖范围较广.大的层面涉及分布式主从.分库.分表等:小的层面包括连接池使用.复杂查询与简单查询的选择及是否在应用中做数据整合等:具体到sql语句执行效率则需调整相应查询 ...
- Gradle初使用
我以前一直使用Maven来构建工程,这两天突然发现gradle也非常好用,记录一下自己使用gradle的过程. Gradle的下载与配置 本次选择下载的是gradle3.5版本,没选最新的gradle ...