JavaScript学习笔记之四 对象 及原型
来源:互联网 发布:c语言malloc 编辑:程序博客网 时间:2024/05/22 06:38
(4)ECMAScript中的常用对象及其属性和方法之
Math
Math.abs( -5 )
Math.pow(2, 10)
Math.sqrt( 9 )
Math.max( 10, 20,15)
Math.min( 10, 20,15 )
Math.round( 1.4 )
Math.ceil( num ) 天花板,上取整,返回不小于指定值的最小整数
Math.floor( num ) 地板,下取整,返回不大于指定值的最大值
*Math.random( ) 生成0~1间的一个伪随机小数,可能生成0,但不可能生成1,即0<= Math.random( ) < 1
0<=Math.random( )*10 < 10 带小数点
0<=Math.floor( Math.random( )*10 ) < 10 0~10间的随机整数
0<=parseInt( Math.random( )*10 ) < 10 0~10间的随机整数
0<=parseInt( Math.random( )*100 ) < 100 0~100间的随机整数
100<=Math.random()*900+100<1000 100~1000间的随机整数
min<=Math.random()*(max-min)+min< max min~max间的随机数
.JavaScript中Object的分类
(1)ECMAScript原生对象: Array、String、RegExp、Global、Math、Date、Number、Boolean、Error(+六种)、Object
(2)BOM: Window
(3)DOM: Document
(4)自定义对象: 用户自己创建的对象
ES中预定义的Error对象都有哪些?
Error: 广泛意义上的错误
SyntaxError: 语法错误 var x = 10; x+++;
ReferenceError: 引用错误 var userName = 'tom'; console.log(uName);
TypeError: 类型错误 console.abc();
EvalError: eval()函数执行错误
RangeError:范围错误 var n = 123.456; console.log( n.toFixed(20) );
URIError: URI解析错误
错误处理
程序执行过程中,可能发生,也可能不发生的问题,称为“错误”或“异常”。
若程序没有错误发生,则可以正常执行至结束;
若程序发生了错误,若没有加以处理,会导致程序终止执行;但若加以恰当的处理,程序仍可能正常执行。
错误处理语法结构:
try{
//可能抛出错误对象的语句 new Error();
}catch( 用于接收错误对象的变量名 ){
//错误处理语句
}[finally{
//不论错误发生与否都要执行的扫尾语句
}]
typeof元素符可能的返回值:
number string boolean object function undefined
注意:null值也被看做object1.面向对象编程的三个基本特征
(1)封装——把多个数据及这些数据操作方法组成一个整体
varstudent1 = {
sname: 'Tom',
math: 95,
chinese: 88,
total: function(){ returnthis.math+this.chinese; }
}
(2)继承——子对象可以继承父对象的所有属性和方法
varemp1 = { };
console.log( emp1.valueOf( ) );
console.log( emp1.toString( ) );
console.log( emp1.hasOwnProperty( 'ename' ) );
(3)多态——一个方法,根据接收到的参数个数、类型的不同,而执行不同的代码
functionadd( ){
if(arguments.length){ }
if(typeof(arguments[0] ) === 'number'){ }
}
创建自定义对象的四种方法
(1)对象直接量语法: var e1 = { ename: 'Tom' };
(2)new调用Object构造方法: var e2 = new Object(); e2.ename='Mary';
(3)使用对象模板: function Emp(ename){this.ename =ename;} var e3=new Emp('John');(4)ES5提供的,用于继承原型对象所有成员。
var childObject = Object.create( prototypeObject );
通过指定一个原型对象(父对象),创建一个继承自该对象的子对象
获取一个对象的原型:
JS中所有对象都有父对象(原型对象),但原型属性的名称有如下规则:
(1)构造函数对象的原型属性: 构造函数名.prototype
(2)其他形式的对象的原型属性: 对象名.__proto__
要想获取任意对象的原型,可以使用Object.getPrototypeOf( 对象名 );
要想修改任意对象的原型,可以使用Object.setPrototypeOf( 对象名, 原型对象名 );
常见的继承方法
(1) 使用构建对象第四种方法
var person = { name:'Tom', age:25 }; //newObject( )
var student = Object.create( person );
student.score = 650;
(2) 使用Object.setPrototypeOf(obj, proto )方法
varperson = { name:'Tom', age:25 };
varstudent = { score:650 };
Object.setPrototypeOf(student, person );
修改student的原型为person,即让student继承person
(3)使用对象模板实现继承
varperson = { name:'Tom', age:25 };
functionStudent( score ){
this.score= score;
}
//修改对象模板的原型,就会修改根据此模板创建的所有对象的原型
Student.prototype = person ;
varstudent1 = new Student(650);
varstudent2 = new Student(630);
//Student.prototype.className= 'WEB1501' ;
//console.log(student1.className);
//console.log(student2.className);
- JavaScript学习笔记之四 对象 及原型
- javascript之对象学习笔记(二)--对象原型,继承
- JavaScript学习笔记之对象及继承
- JavaScript学习笔记四:对象
- JavaScript之原型对象学习总结
- JavaScript对象之原型
- javascript学习笔记一:javascript原型+对象字面量等
- JavaScript原型学习笔记
- JavaScript学习笔记(三十四) 经典模式四-共享原型
- javascript学习笔记之四
- Javascript的对象及原型
- javascript--面向对象(四)原型对象,构造函数及实例对象的关系图
- javascript 学习笔记(1)对象和原型
- JavaScript学习笔记之对象
- javascript学习实录 之三(对象原型引用prototype
- javascript原型及原型链学习
- JS学习笔记-对象创建模式及原型
- JavaScript学习之路--面向对象设计之创建对象(2)--原型对象详解
- Servlet报错----导入项目时报错
- Leetcode151: Permutations II
- hadoop伪分布式搭建
- Adobe Flash Player 设置鼠标点不到允许或者拒绝!
- MapReduce倒排索引概要
- JavaScript学习笔记之四 对象 及原型
- 那一年, 我学会了ping命令
- 平面几何中的有名定理 PPT
- wireshark抓包语法
- POJ 1724 搜索
- Linux驱动虚拟地址和物理地址的映射
- 第一次玩
- 内存管理1----关闭ARC
- insmod 内核模块参数传递