code: function Battery(properties) {
          if (properties)
              for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
                  if (properties[keys[i]] != null)
                      this[keys[i]] = properties[keys[i]];
      }
docs: Properties of a Battery.
  @exports IBattery
  @interface IBattery
  @property {number} [percent] 电量
  desc: 电量百分比
  unit: %
  range: [0, 100]
  @property {boolean} [charging] 正在充电
  desc: 是否正在充电
  @property {number} [voltage] 电压
  desc: 电池组总电压
  unit: mV
  range: [0, +∞)
  @property {number} [current] 电流
  desc: 正为放电，负为充电
  unit: mA
  @property {number} [temperature] 温度
  desc: 温度
  range: (-∞, +∞)
   
  Constructs a new Battery.
  @exports Battery
  @classdesc Represents a Battery.
  @constructor
  @param {IBattery=} [properties] Properties to set