JS学习笔记-OO疑问之对象创建】的更多相关文章

问一.引入工厂,解决反复代码 前面已经提到,JS中创建对象的方法,不难发现,主要的创建方法中,创建一个对象还算简单,假设创建多个类似的对象的话就会产生大量反复的代码. 解决:工厂模式方法(加入一个专门创建对象的方法,传入參数避免反复) function createObject(name,age){ var obj =new Object(); //创建对象 obj.name = name; obj.age = age; obj.run = function(){ return this.nam…
封装是面向对象的基础,今天所要学习的匿名函数与闭包就是为了实现JS的面向对象封装.封装实现.封装变量,提高数据.系统安全性,封装正是面向对象的基础. 一.匿名函数 即没有名字的函数,其创建方式为 function(){...} 单独存在的匿名函数,无法执行,可通过赋值给变量调用或通过表达式自我执行来实现执行. 1.赋值给变量为一般的函数使用方式 var run = function(){ return '方法执行中'; }; alert(run()); 2.通过表达式自我运行 (function…
问了.工厂介绍,解决重码 前面已经提到,JS中创建对象的方法.不难发现,主要的创建方法中,创建一个对象还算简单,假设创建多个类似的对象的话就会产生大量反复的代码. 解决:工厂模式方法(加入一个专门创建对象的方法,传入參数避免反复) function createObject(name,age){ var obj =new Object(); //创建对象 obj.name = name; obj.age = age; obj.run = function(){ return this.name…
参考资料: 1. http://www.w3school.com.cn/js/js_objects.asp ☂ 知识点: ☞ Javascript中的所有事物都是对象. ☞ Javascript是基于prototype,而不是基于类的. ☞ Javascript是面向对象的语言,但Javascript不使用类.因此,在Javascript中,不会创建类,也不会通过类来创建对象. ☞ Javascript中的所有数字都存储为根为10的64位的浮点数.其中,整数最多为15位,小数最大位数为17,且浮…
严格等于 a===b 首先判断两边数据的类型,若类型不同,返回false. 若类型相同(1.2和1.2,字符串相等指内容和长度都是一样的),返回true null===null undefined===undefined 注意NaN和任何值都不相等,包括它自己NaN!==NaN--->true new Object!==new Object JS对象的比较是引用的比较,所以两个对象不相等 若创建对象X,将X和它本身进行比较,会相等 对象只和自己相等X===X 任意两个空对象不想等 等于 a==b…
-->Math对象 常用属性和方法-->使用Math对象制作相应的效果 Math对象用于执行数学任务 一.Math对象的属性: 二.Math对象的方法: 三.常用属性和方法: Math.PI ----------------返回圆周率3.14 ...Math.ceil(x) ------------对数值x进行向上取整Math.floor(x) -----------对数值x进行向下取整Math.round(x) ----------对数值x进行四舍五入Math.min(a,b,c...) -…
WebGL学习----Three.js学习笔记(5) 点击查看demo演示 Demo地址:https://nsytsqdtn.github.io/demo/360/360 简单网格材质 MeshNormalMaterial MeshNormalMaterial是一种不受渲染时使用的颜色影响的材质,它只与自己每一个面从内到外的法向量有关.法向量在webgl中用处十分广泛,光的反射,以及三维图形的纹理映射都与这个有关. 从图中可以看到,网格的每一面渲染的颜色都是不一样的,如果我们想要在物体表面添加法…
WebGL学习----Three.js学习笔记(1) webgl介绍 WebGL是一种3D绘图协议,它把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染. WebGL技术标准免去了开发网页专用渲染插件的麻烦,可被用于创建具有复杂3D结构的网站页面,甚至可以用来设计3D网页游戏. 原生的WebGl比较复杂,主要通过对顶点着色器和片元着色器的操作,来实现渲染,但实…
JS 中变量和其它语言中变量最大的区别就是,JS 是松散型语言,决定了它只是在某一个特定时间保存某一特定的值的一个名字而已.由于在定义变量的时候不需要显示规定必须保存某种类型的值,故变量的值以及保存的数据类型可以在脚本页面的生命周期中随意的改变,其他语言则不可. 1.基本类型和引用类型的值     基本类型:指那些保存在栈内存中的简单数据,即这种值完全保存在内存中的一个位置.他们所占据的空间大小是固定的.类型有:Number, Null, Boolean, Undefined, String[其…
1.DOM节点的常用属性(所有节点都支持) nodeType:元素1,属性2,文本3 nodeName:元素标签名的大写形式 nodeValue:元素节点为null,文本节点为文本内容,属性节点为属性值 关系属性:parentNode,childNodes,nextSibling,previousSibling,firstChild,lastChild ownerDocument:文档节点(document对象) 2.操作DOM节点(增/删/改) appendChild(node);给当前节点的…