文字直播网站怎么做的,大通县wap网站建设公司,电商网站建设注意事项,wordpress 任务插件我们知道可用方括号来表示数组或者JSON对象的属性值#xff0c;其实在特定场合#xff0c;方括号还有妙用的。 比如我有数据源是一组JSON#xff0c;其中有一个属性是时间字符串#xff0c;我想对时间的小时、星期、日、月分别进行处理。每条JSON都各自生成一条新的JSON其实在特定场合方括号还有妙用的。 比如我有数据源是一组JSON其中有一个属性是时间字符串我想对时间的小时、星期、日、月分别进行处理。每条JSON都各自生成一条新的JSON传入参数fieldhour时取小时存入hour字段传入参数是fieldday时取星期存入day字段传入参数fielddate时取日期存入data字段传入参数是fieldmonth时取月份存入month字段。下面是例程用到了方括号的两种方法还真不好用其他方式替代
function showchart(dataset,field,getarg,offset) {
...
let transdataset.map(item({[field]:(new Date(item.rectime))[getarg]()-offset}))
...
}
...
showchart(ds,hour, getHours,0)
showchart(ds,day, getDay,0)
showchart(ds,date, getDate,1)
showchart(ds,month, getMonth, 0)
函数里offset是一个偏移量这里说一下JavaScript里时间相关的函数有些地方与常理有些出入getHours()取出来的小时没有异议getDay()星期日是0星期一到星期六分别对应1-6也没有毛病getDate()出来的结果就是日期1-31没有毛病吧但是如果你用它的值当作数组下标的话就没有0还得自己再折腾转换下我就干脆-1从0开始getMonth()这个跟getDate()又不是一个逻辑了这个一月是0,十二月是11理解起来要加1不过值用作数组下标的话刚刚好。 代码里[field]你如果去掉方括号的话就是field作为key了而不是field的值作为keyobj[getarg]()这种表示obj对象的一个调用方法方法名是传入参数getarg这个字符串的值。