//我们创建每个函数默认都有一个prototype(原型)属性,这个属性是一个对象 //1.我是普通的构造方法,我的属性叫实例属性,我的方法叫实例方法 /* function Box(name,age){ this.name=name; this.age=age; this.run=function(){ return this.name+'--'+this.age; } } */ //2.原型中的属性叫原型属性,原型中的方法叫原型方法 function Box(){ Box.prototype.name='gao'; Box.prototype.age=23; Box.prototype.run=function(){ return this.name+'-'+this.age; } } var box1=new Box(); var box2=new Box(); console.log(box1.run==box2.run);//原型方法地址是共享的返回true //3.prototype和__proto__的关系 console.log(box1.prototype);//这个属性是一个对象,访问不到 console.log(box1.__proto__);//这个属性是一个指针指向prototype原型对象 //4.constructor属性 console.log(box1.constructor);//构造属性,可以获取构造函数本身,作用是被原型指针定位,获得构造函数本身,可以叫做javascript原型链 //5.底层中constructor,prototype,__proto__相互串联工作 //6.判断一个对象是否指向了该构造函数的原型对象.bool返回值 console.log(Box.prototype.isPrototypeOf(box1)); //7.原型中执行顺序,优先执行实例属性和方法,然后才在原型中查找 //8.删除实例/原型对象的属性 //box1.name='wang'; //delete box1.name; //delete Box.prototype.name; //9.对象自身(不包括原型链)是否具有指定名称的属性如果有,返回true否则返回false console.log(Box.hasOwnProperty('age')); //10.in 操作符能够检查一个属性是否在一个实例或者原型中.有true,无false console.log('age' in box1);
由于工作需要长期使用Ajax,一个页面重复的AJAX请求太多,于是封装起来,只需要编写回调函数/* ------------- 使用方法: 1.ajaxrequest()函数执行准备的参数(1.请求地址2.发送数据字符串拼接3.type值可选get/post4.回调函数名称) exam...
捕捉模式从DOM最顶层一直到最后一层,冒泡正好相反,具体运行以下实例测试.<!DOCTYPE html> <html> <head> <title>捕捉和冒泡</title> <meta charset="...
TmodJS是一套完整的前端模块框架。 虽然我们PHP框架自带各种模板引擎,但是始终是后端模板引擎。例如我们在使用ThinkPHP3.2.3中如果是Ajax异步加载页面,拼接HTML真的是很头疼的一件事情。...
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> <script type...
代码1:<!--代码开始--> <script src="http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js"></script> <script>...
查看文章前你需要了解以下2点://1.this指向的是windows对象,通过console.log(this)可以查看到对象包含所有的方法和属性//2.全局变量属于this对象的属性通过console.log(this)可以查看到对象包含我们设置的全局变量我们经常在创建相同结构的Js对象会重复的设...