function attr(elem,name,value)
{
  name={'for':'htmlFor','class':'className'} [name] || name;
}
这的“ name={'for':'htmlFor','class':'className'} [name] || name;”是什么意思 怎么理解?

解决方案 »

  1.   

    {'for':'htmlFor','class':'className'}是一个对像。。
    例如,var obj={'for':'htmlFor','class':'className'},那么obj['for']就等于htmlFor,obj['class']就等于className。
     name={'for':'htmlFor','class':'className'} [name] || name这句话的意思就是,首先判断
    {'for':'htmlFor','class':'className'} [name]存不存在,当然,这里的话只有name为for或class才存在,如果存在,则name={'for':'htmlFor','class':'className'} [name],若不存在,则name=name,等号右边的name也就是函数的形参