Util

概述

G2.Util 是一个工具类,提供了如下方法:

  • 字符串处理;
  • 类型判断;
  • 继承相关;
  • 数组相关;
  • 其他。

语法

var Util = G2.Util;
Util.extend(ChildClass, FatherClass); // 继承
Util.isArray([]); // 判断是否是数组

字符串相关

substitute

Util.substitute(str, obj)

替换字符串中的字段,返回匹配字符串的正则表达式。

  • str: String 类型,模板字符串
  • obj: 一个 json 对象。
var str = 'M {x} {y}';
var point = {
  x: 100,
  y: 30
}
var result = G2.Util.substitute(str, point); // 返回 'M 100 30'

ucfirst

Util.ucfirst(str)

将字符串的第一个字母变成大写。

var result = G2.Util.ucfirst('test'); // 返回 Test

类型判断

isObject

Util.isObject(param)

判断参数是否为对象。

isNumber

Util.isNumber(param)

判断参数是否为数字。

isNumeric

Util.isNumeric(param)

是否是数字或者数字字符串。

isBoolean

Util.isBoolean(param)

判断参数是否为布尔值。

isFunction

Util.isFunction(param)

判断参数是否为函数。

isArray

Util.isArray(param)

判断参数是否为数组。

isDate

Util.isDate(param)

判断参数是否为日期。

isNull

Util.isNull(param)

判断一个对象是否是 null 或者 undefined。

继承相关

mix

Util.mix(target, source1, source2....source)

合并各个对象。【TODO 需要说明】

// TODO

Util.mix(true, target, source1, source2....sourceN)

深层合并。

// TODO

augment

Util.augment(target, source1, source2...sourceN)

将属性方法复制到 target 的原型链上。

extend

Util.extend(subclass, superclass, overrides, staticOverrides)

继承。

mixin

Util.mixin(target, mixins)

将数组中的代码片段的属性和方法复制到target的原型链上。

数组相关

toArray

Util.toArray(value)

将 value 转换成数组。

map

Util.map(arr, fn)

转换数值的值。

var arr = [1, 2, 3, 4, 5];
var doubleArr = G2.Util.map(arr, function(val) {
  return val * 2;
}); // 将 arr 数组中每个数据 * 2

filter

Util.filter(arr, fn)

过滤数组。

each

Util.each(arr | obj, fn)

遍历数组或者对象。

// 遍历对象
var obj = {
  a: 'test',
  b: 'test'
};
Util.each(obj, function(item, index) {
  // item 为 obj 的每一个属性: a: 'test' , b: 'test'
  // index 为索引值
});

// 遍历数组
var arr = [1, 2, 3];
Util.each(arr, function(item, index) {

});

indexOf

Util.indexOf(arr, value)

返回 value 在数组中的索引。

remove

Util.remove(arr, value)

将 value 从 arr 中删除。

empty

Util.empty()

清空。

equalsArray

equalsArray(arr1, arr2)

判断数组内容是否相等。

其他

guid

Util.guid(prefix)

产生唯一码。

var id = G2.Util.guid('g-chart'); // id:g-chart1

wrapBehavior

Util.wrapBehavior(obj, fn)

封装事件,便于使用上下文this,和便于解除事件时使用。

getWrapBehavior

Util.getWrapBehavior(obj,fn)

获取封装的事件。