codecamp

hack属性:语法

hack属性可以放在任何可反映的代码片段上。这些包括:

  • 功能
  • 方法
  • 接口
  • 性状

属性被封闭在<<和>>。多个属性可以放在同一组括号内。每个属性都有一个键和一组可选的逗号分隔值。

官方语法

<<key[(value 1,...,value N)][..., key[(value 1,...,value N)]]>>

语法的例子

<<NoValuesAttribute>>
function foo() {}
<<OneValueAttribute('Hello')>>
class A {}
<<FirstAttribute('Good', 'Afternoon'), SecondAttribute, ThirdAttribute('2')>>
trait B {}

特殊属性

属性开始__的特殊属性由typechecker和HHVM保留。自定义属性不能以__。

属性访问

你可以使用getAttribute()on ReflectionClassReflectionFunction等等来访问一个属性。只需将该键传递给该属性getAttribute()即可接收其值的数组。

hack属性:介绍
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }