当前位置: 首页 > news >正文

做网站源码要给客户嘛wordpress 函数api文件

做网站源码要给客户嘛,wordpress 函数api文件,类似58的推广平台有哪些平台,贵州建设厅网站办事大厅说明 接JavaScript — [学习笔记]观察者模式 理解对象 工厂模式 构造函数模式上一篇构造函数模式创建的实例,不同实例的同一个方法是不相等的,为了解决这个问题.出现了原型模式 1. 原型模式 具体做法是,不在构造函数中定义对象实例的信息,而是将这些…说明 接JavaScript — [学习笔记]观察者模式 理解对象 工厂模式 构造函数模式上一篇构造函数模式创建的实例,不同实例的同一个方法是不相等的,为了解决这个问题.出现了原型模式 1. 原型模式 具体做法是,不在构造函数中定义对象实例的信息,而是将这些信息直接添加到原型对象中 function Person(){} Person.prototype.name Nicholas; Person.prototype.age 29; Person.prototype.job Software Engineer; Person.prototype.sayName function () {alert(this.name); }; var person1 new Person(); person1.sayName(); // Nicholasvar person2 new Person(); person2.sayName(); // Nicholasconsole.log(person1.sayName person2.sayName); // true1.1 理解原型对象 1.1.1 prototype属性和constructor属性 创建一个函数(Person),就会根据一组规则创建一个prototype属性(Person.prototype)prototype上面还要一个constructor属性(必带技能),它(Person.prototype.constructor)指向函数Personprototype属性上的所有属性和方法会被所有使用new操作符生产的实例(person1, person2)共享实例person1、person2通过new Person得到,会有一个[[Prototype]]的指针(在浏览器中通过__proto__访问),它指向Person.prototype 1.1.2 读取某个属性的顺序 读取属性的模拟函数如下: // obj是某个对象, attr是该对象的属性 const getVal (obj, attr) {// 如果对象中存在该属性则返回if(obj[attr]) {return obj[attr]} else if (obj.constructor Object) {// 是Objectreturn undefined} else{// 不是Object,检查其constructor指向的函数if(obj.constructor[attr]){return obj.constructor[attr]} else {// constructor指向的函数中不存在,顺着 __proto__ 属性找下去.getVal(obj.__proto__, attr);}} }说明: 所有通过function声明的函数,都继承自FunctionFunction继承自Object 1.1.3 说说 通过上面的原型找属性的顺序,可以知道: 当使用new Person生成实例(person1)的时候,person1会有一个指向Person.prototype的指针__proto__当访问person1的属性或方法的时候,先从实例开始寻找,若找到了则返回,否则会顺着__proto__向上寻找 1.2 区分一个属性是否来自原型 需要明白下面2点: 使用in操作符会返回所有对象上的属性或者方法使用hasOwnProperty可以确定一个属性是否来自实例对象 // 判断一个熟悉是否来自原型 const fromPrototype (obj, attr) {return !obj.hasOwnprototype (attr in obj); }1.3 Object.defineProperty Object.defineProperty: 可以给一个对象添加属性,并对属性进行描述使用如下: Object.defineProperty(Person.prototype, constructor, {enumerable: false,value: Person })1.3.1 数据属性和访问器属性 JS中的属性类型分为: 数据属性和访问器属性数据属性包括: [[Configurabal]]: 是否能被delete删除[[Numerable]]: 是否能被for-in循环访问属性[[Writeble]]: 是否可以被修改[[Value]]: 属性的值 访问器属性: Configurable、Numerable、Get(读取时触发) 、Set(修改时触发) 1.3.2 Object.defineProperty的使用 在使用对象字面量对函数的原型进行赋值的时候,会丢失原本的constructor属性使用Object.defineProperty为它加上constructor属性 function Person () {} Person.prototype {name: marron,age: 18 } Object.defineProperty(Person.prototype, constructor, {numerable: false,value: Person })constructor是不能被for-in循环访问到的在字面量中直接赋值,会被for-in循环访问到 1.4 原型的动态性 可以先创建实例后修改原型 function Person () {}; cosnt friend new Person(); Person.prototype.sayHi () { console.log(SayHi) }; friend.sayHi();将上述代码修改为下面: - Person.prototype.sayHi () { console.log(SayHi) };Person.prototype {sayHi: function () {console.log(SayHi);}}此时在调用friend.sayHi会报错: Uncaught TypeError: p1.sayHi is not a function, 原因如下: 使用new操作符时: 建立了一个指针 proto, 它指向 Person.prototype(这个是默认建立的),假设在空间A中,即此时 person1 先从自己的空间中取数据,若没有则去 A中找当对Person.prototype进行字面量赋值时, 它改变的是Person.prototype指针的指向,在上面的一系列操作实际是在空间B中.当完成了Person.prototype的字面量赋值后,相当于给Person的原型对象新开辟了一个空间B.而此时person1的__proto__还是指向A.故访问不到B 注:重写原型对象切断了现有原型与任何之前已经存在的对象实例之间的联系.
http://www.pierceye.com/news/137092/

相关文章:

  • 成品网站源码68w68游戏wordpress php推送示例
  • 博优云软件官方网站wordpress 个人
  • 登封 网站建设烟台网站关键词推广
  • 深圳实惠的专业建站公司淘宝券商城网站制作
  • 珠海手机网站建设成都设计网站
  • 网站mp3播放器代码国家企业信息系统官方
  • 江西建设银行招聘网站pc网站还有必要做吗
  • 网站建设几个要素做网站需要学会什么软件
  • 做视频网站什么平台好站酷设计网站首页
  • 班级网站设计论文网站多国语言
  • 网站制作评价标准网站服务器怎么收费
  • 怎么建立自己的网站平台多少钱wordpress自建菜单
  • 深圳购物网站如何制作外贸网站 wordpress
  • 商品展示网站模板中国建设电工立网站
  • 网站推广的基本方法对于大部分网站来说都是适用的河北网站开发费用
  • 高安网站建设公司外链代发免费
  • 企业网站建设的价格wordpress免费用户
  • 怎么做门淘宝网站广播电台网站建设板块
  • ai效果图网站建设一个视频网站需要什么条件
  • 上海安全建设协会网站推广普通话的方法
  • 自己怎么做外贸英文网站网站建设外包
  • 南京专业网站开发团队wordpress如何构建页面
  • 济南网站优化排名推广python基础教程雪峰
  • 垂直购物网站建设代做网站推广的公司
  • 马云做一网站 只作一次网页界面设计使用色彩的作用是什么
  • 网站上传权限广西网站建设银行
  • 南通网站建设规划书wordpress 上传图片 500
  • 推广自身网站升级的网站显示什么
  • 网站与系统对接图文方案免费可信网站认证
  • 深圳设计网站速成班网站音频播放器代码