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

做快三网站seo相关ppt

做快三网站,seo相关ppt,开发一个小程序游戏要多少钱,凡科建设网站的步骤函数名 有两种特殊情况#xff1a;bind方法创造的函数#xff0c;name属性返回bound加上原函数的名字#xff1b;Function构造函数创造的函数#xff0c;name属性返回anonymous。 bind函数名 // 以bound开头 function foo() { } const fnName foo.bind().name console.lo…函数名 有两种特殊情况bind方法创造的函数name属性返回bound加上原函数的名字Function构造函数创造的函数name属性返回anonymous。 bind函数名 // 以bound开头 function foo() { } const fnName foo.bind().name console.log(fnName) // bound foogetter setter 如果对象的方法使用了取值函数getter和存值函数setter则name属性不是在该方法上面而是该方法的属性的描述对象的get和set属性上面返回值是方法名前加上get和set。 const obj {get foo() {},set foo(x) {} };obj.foo.name // TypeError: Cannot read property name of undefinedconst descriptor Object.getOwnPropertyDescriptor(obj, foo);descriptor.get.name // get foo descriptor.set.name // set foo对象方法的简写 const o {method() {return Hello!;} };node common.js写法 属性名表达式 ES6 允许字面量定义对象时用方法二表达式作为对象的属性名即把表达式放在方括号内。 let propKey foo;let obj {[propKey]: true,[a bc]: 123 };let obj {[h ello]() {return hi;} };obj.hello() // hi属性名可以重复重复则覆盖 let b b let obj {[a b] : undefined,[a b] : 1, // 属性名和上面重复永远取最后的obj最后依然只有一个键‘ab’ }属性名表达式如果是一个对象默认情况下会自动将对象转为字符串[object Object]这一点要特别小心。const keyA {a: 1}; const keyB {b: 2};const myObject {[keyA]: valueA,[keyB]: valueB };myObject // Object {[object Object]: valueB} // 1. 属性名相同覆盖 // 2. 将一切js变量转为字符串作为属性名一个对象的属性名可以是任何有效的 JavaScript 字符串或者可以被转换为字符串的任何类型包括空字符串。然而一个属性的名称如果不是一个有效的 JavaScript 标识符例如一个由空格或连字符或者以数字开头的属性名就只能通过方括号标记访问。这个标记法在属性名称是动态判定属性名只有到运行时才能判定时非常有用。JavaScript中的对象只能使用String类型作为键类型。 属性描述符 getOwnPropertyDescriptor是构造器上的方法方法返回指定对象上一个自有属性对应的属性描述符。自有属性指的是直接赋予该对象的属性不需要从原型链上进行查找的属性若无返回undefinedObject.getOwnPropertyDescriptor(obj, prop) 一个属性描述符是一个记录由下面属性当中的某些组成的 value 该属性的值(仅针对数据属性描述符有效)writable 当且仅当属性的值可以被改变时为true。(仅针对数据属性描述有效) 重新赋值不包括删除get 获取该属性的访问器函数getter。如果没有访问器 该值为undefined。(仅针对包含访问器或设置器的属性描述有效)set 获取该属性的设置器函数setter。 如果没有设置器 该值为undefined。(仅针对包含访问器或设置器的属性描述有效)configurable 当且仅当指定对象的属性描述可以被改变或者属性可被删除时为true。 delete obj.aenumerable 当且仅当指定对象的属性可以被枚举出时为 true。 Object.defineProperty(o, baz, {value: 8675309,writable: false, // 重写baz属性会静默失败而严格模式重写则报错enumerable: false });注意在 ES5 中如果该方法的第一个参数不是对象而是原始类型那么就会产生出现 TypeError。而在 ES2015第一个的参数不是对象的话就会被强制转换为对象。 Object.getOwnPropertyDescriptor(foo, 0); // 类型错误: foo 不是一个对象 // ES5 codeObject.getOwnPropertyDescriptor(foo, 0); // Object returned by ES2015 code: { // configurable: false, // enumerable: true, // value: f, // writable: false // }getter、setter在对象上 使用Object.defineProperties的方法同样也可以对一个已创建的对象在任何时候为其添加getter或setter方法。这个方法的第一个参数是你想定义getter或setter方法的对象第二个参数是一个对象这个对象的属性名用作getter或setter的名字属性名对应的属性值用作定义getter或setter方法的函数。 set必须要有参数否则报错Uncaught SyntaxError: Setter must have exactly one formal parameter. var o {a: 7,get b() { return this.a 1;},set c(x) {this.a x / 2} };console.log(o.a); // 7 console.log(o.b); // 8 注意访问方式 get直接读 o.c 50; // set要赋值 console.log(o.a); // 25var language {set add(name){this.ln.push(name)},ln: [] } language.add EN language.add FN console.log(language.ln) // [EN,FN]mdn getter mdn setter a也是o的属性只是用getter、setter劫持了如果getter和属性重名会报错 Uncaught RangeError: Maximum call stack size exceeded 不可能同时将一个 getter 绑定到一个属性并且该属性实际上具有一个值。 使用get语法时不能与另一个 get 或具有相同属性的数据条目同时出现在一个对象字面量中。 不允许使用 { get x() { }, get x() { } } 和 { x: …, get x() { } }。 在对象字面量中不能为一个已有真实值的变量使用 set 也不能为一个属性设置多个 set。 ( { set x(v) { }, set x(v) { } } 和 { x: …, set x(v) { } } 是不允许的 ) var o {_a: 7,get a() { return this._a 1;},set a(x) {this._a x / 2} };console.log(o.a); // 8 o.a 10 console.log(o.a); // 6 console.log(Object.keys(o)) // [_a,a]Invalid property descriptor. Cannot both specify accessors and a value or writable attribute, #Object var obj {get a(){return 2} } // 注意这里也不能再为已有的对象属性使用defineProperty Object.defineProperty(obj, b, {get: function(){return this.a 100},// value: 2 写了get不能再写value/writable否则报错 }) console.log(obj.a) // 2 console.log(obj.b) // 102get和set一般是成对出现的并且不应写死不然没有意义 getter/setter → 伪属性 Object.defineProperty与创建对象时定义getter/setter的区别Object.defineProperty的getter/setter/其余普通属性不可枚举、不可配置 const obj {a: 2 } Object.defineProperty(obj, b, {set: function (x) {this.a x} }) const res Object.getOwnPropertyDescriptor(obj, b) console.log(res) console.log(Object.keys(obj))const obj2 {_a: 2,get a() {return this._a},set a(val) {this._a val} } const res2 Object.getOwnPropertyDescriptor(obj2, a) console.log(res2) console.log(res2.get.name) // get a console.log(res2.set.name) // set a console.log(Object.keys(obj2))
http://www.huolong8.cn/news/406273/

相关文章:

  • 织梦网站后台打开空白xampp安装wordpress说明
  • 邯郸网站建设公司哪家好pHP可以做论坛网站吗
  • 国外域名交易网站怎么做网页代码
  • 企业门户网站的建设方法网上给别人做网站
  • 福州如何做百度的网站德州哪家网站建设好
  • 哈尔滨建设部网站惠州建设厅网站
  • 大同招聘网站建设把自己做的网站放到网上去
  • 如何建设网站的外接 以及在增加外接的时应当注意什么外包公司加盟
  • CMS网站建设优势wordpress文章到qq群
  • 云浮市住房城乡建设信息网网站建设银行网站打不开别的网站可以
  • 昆明网站排名优化网页制作公司文案
  • phpmysql网站开发笔记产品软文
  • 克拉玛依做网站自己视频怎么上传网站
  • 网站跳转怎么办wordpress 安装 godaddy在哪里 上传的根目录
  • 滨州公司网站建设wordpress素材模板
  • 手机设计网站公司网站开发技术部绩效考核
  • wordpress音乐网站主题媒体网站网页设计
  • 大型门户网站建设流程陕煤建设集团铜川分公司网站
  • 三合一建站网站seo具体是什么
  • 建设网站的网站江苏哈尔滨手机网站建设报价
  • wordpress怎么做淘客网站建一个多用户团购网站需要多少钱
  • 玉泉营网站建设公司婚纱摄影网站源码下载
  • 网站建设维护与网页设计建设银行网站卡死
  • 药品推荐网站模板安庆网站建设工作室
  • 建设网站需要注册证书吗网站开发保密合同范本
  • 建设银行网站打不井个人网站如何在百度上做推广
  • 企业建设营销网站有哪些步骤律师事务所网站设计
  • 免费网站下载直播软件重庆哪里可以做网站
  • 复兴网站制作广州住房和城乡建设厅网站首页
  • 青海做网站wordpress淘宝客单页模板下载