> 财经
vue源码讲解(看懂vue源码什么水平)
导语:vue源码全面解析(四十五)源码中使用的工具类util
// 是 undefined 或者 nullfunction isUndef (v) { return v === undefined || v === null }
// 不是 undefined 或者 nullfunction isDef (v) { return v !== undefined && v !== null }
// truefunction isTrue (v) { return v === true }
// falsefunction isFalse (v) { return v === false }
// 基本数据类型function isPrimitive (value) { return ( typeof value === &39; || typeof value === &39; || // $flow-disable-line typeof value === &39; || typeof value === &39; ) }
// 除了null之外的对象类型function isObject (obj) { return obj !== null && typeof obj === &39; }
var _toString = Object.prototype.toString;// 返回一个字符的值,通常用着数据类型判断// 例如 [object Object]、[object String]、[object NUmber] function toRawType (value) { return _toString.call(value).slice(8, -1) }
var _toString = Object.prototype.toString;// 是否为 Object类型function isPlainObject (obj) { return _toString.call(obj) === &39; }
// 是否为正则表达式function isRegExp (v) { return _toString.call(v) === &39; }
// 是否为有效的数组索引function isValidArrayIndex (val) { var n = parseFloat(String(val)); return n >= 0 && Math.floor(n) === n && isFinite(val) }
// 是否为 Promisefunction isPromise (val) { return ( isDef(val) && typeof val.then === &39; && typeof val.catch === &39; ) }
// 将值转换为字符串function toString (val) { return val == null ? &39; : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString) ? JSON.stringify(val, null, 2) : String(val) }
// 将值转换为数值 function toNumber (val) { var n = parseFloat(val); return isNaN(n) ? val : n }
// 移除数组的指定项function remove (arr, item) { if (arr.length) { var index = arr.indexOf(item); if (index > -1) { return arr.splice(index, 1) } } }
// 查找一个对象是否有某个属性,但是不会去查找它的原型链var hasOwnProperty = Object.prototype.hasOwnProperty;function hasOwn (obj, key) { return hasOwnProperty.call(obj, key)}
// 把类似数组的结构转换为真实数组function toArray (list, start) { start = start || 0; var i = list.length - start; var ret = new Array(i); while (i--) { ret[i] = list[i + start]; } return ret }
// 将属性混合到对象中去 function extend (to, _from) { for (var key in _from) { to[key] = _from[key]; } return to }
本文内容由快快网络小滢创作整理编辑!