js与jquery 学习随笔(二)
2012-12-27 23:48
309 查看
<html> <head></head> <body> <script> var temp = "temp" ; var s1; var i = 11; var t = null ; var b = new Boolean(true);//Boolean 对象 var b1 = Boolean(true); //Boolean类型的数值 /** js类型如下**/ //document.write(typeof(temp) +"</br>") //document.write(typeof s1+"</br>") //document.write(typeof i +"</br>") //document.write(typeof t +"</br>") //document.write(typeof b +"</br>") //document.write(typeof b1+"</br>") /**js字符串与数字转换**/ var num = 11.11 //document.write(temp.length+"</br>") //document.write(i.toString(16)+"</br>")//转换成16进制 //document.write(num.toString()+"</br>") //document.write(b.toString()+"</br>") //document.write(parseInt(num)+"</br>") //document.write(parseFloat(i)+"</br>") /** js算不算纯正的面向对象的语言呢?个人觉得应该不算, 虽然prototype可以实现面向对象的特性,但js语言本身带有偏向带有基于函数的特性。 /**Number对象**/ var numObj = new Number(12.12); //document.write(numObj+"</br>") //document.write(numObj.toFixed(4)+"</br>")//精度为4位 //document.write(numObj.toPrecision(1)+"</br>") //document.write(numObj.toPrecision(2)+"</br>") //document.write(numObj.toPrecision(3)+"</br>") /**js中的类**/ function ClassA(sArgs1,sArgs2){ this.sArgs1 = sArgs1; this.sArgs2 = sArgs2; this.doOp = function(){ return (this.sArgs1+this.sArgs2); }; this.say = function(){ return 1; } } ClassA.prototype.doAdd = function(){ return this.sArgs1+this.sArgs2; } var classA = new ClassA(1,2); var classB = new ClassA(2,3); //document.write("doOperation: "+classA.doOp()+" doAdd: "+classA.doAdd()+"</br>"); //document.write("doOperation: "+classB.doOp()+" doAdd: "+classB.doAdd()+"</br>") /**js 类的继承**/ function ClassB(sArgs1,sArgs2){ this.Method = ClassA; this.Method(sArgs1,sArgs2); delete this.Method; } var cB = new ClassB(2,5); //document.write(cB.doOp()) function ClassC(args1,args2){ this.Method = ClassB; this.Method(args1,args2); delete this.Method; this.sayHello = function(){ return "Hi "+this.name+", "+this.welMessgae; } this.doChange = function(rx1,rx2){ return rx1+rx2; } } var person = new Object; person.name = "sunflower"; person.welMessgae ="welcome"; var classC = new ClassC(9,9); document.write(classC.sayHello.call(person)+"</br>")//call方法的定义是:可以代替另一个对象调用方法。 document.write(classC.sayHello.apply(person)+"</br>")//apply方法的定义是:劫持另外一个对象的方法,继承另外一个对象的属性 var obj = new Object; document.write(classC.doChange.call(obj,12,12)+"</br>") document.write(classC.doChange.apply(obj,[13,13])) //一些资料是这样描述call方法与apply方法: //apply方法与call方法在作用上面是相同的,在参数传递上面有着区别 </script> </body> </html>
相关文章推荐
- js与jquery 学习随笔(一)
- js与jquery 学习随笔(三) 打印页面
- Node.js学习随笔(1)
- 【嘉兴东臣php】JS,Jquery,Ajax学习周总结
- Vue.js学习随笔
- MVC学习随笔----如何在页面中添加JS和CSS文件
- Arc gis api for js 学习随笔之绑定事件鼠标动作
- jQuery学习笔记(在js中增加、删除及定位控件的操作)
- Jquery.validation.js学习
- js,jquery的学习杂谈
- jQuery Ui.Layout.js――PrintArea.js学习
- js中的ajax和jquery中的ajax学习笔记
- jQuery 1.6 源码学习(二)——core.js[2]之extend&ready方法
- jQuery 随笔 之 与其他JS库冲突的解决
- jQuery.validationEngine.js学习
- JS和JQuery中的事件托付 学习笔记
- js和jquery的学习方案建议汇总
- 遮罩输入插件jquery.maskedinput.js学习
- jQuery 1.6 源码学习(一)——core.js[1]之基本架构
- 【 .Net码农】【JQuery】[js学习笔记]PDF.js专题