激光切割製圖軟件

1、基礎判斷
function isUndef(v) {
return v === undefined || v === null
}
function isDef(v) {
return v !== undefined && v !== null
}
function isTrue(v) {
return v === true
}
function isFalse(v) {
return v === false
}
複製代碼2、檢查是否是原始值
function isPrimitive(value) {
return (
typeof value === ‘string’ ||
typeof value === ‘number’ ||
// $flow-disable-line
typeof value === ‘symbol’ ||
typeof value === ‘boolean’
)
}
複製代碼3、快速對象檢查
function isObject(obj) {
return obj !== null && typeof obj === ‘object’
}
複製代碼4、獲取值的原始類型字符串
var _toString = Object.prototype.toString;

function toRawType(value) {
return _toString.call(value).slice(8, -1)
}
複製代碼5、嚴格的對象類型檢查
function isPlainObject(obj) {
return _toString.call(obj) === ‘[object Object]’
}
// 這裏大家可以思考一下爲什麼使用這種方式,還有下面的正則檢查
複製代碼6、嚴格的正則類型檢查
function isRegExp(v) {
return _toString.call(v) === ‘[object RegExp]’
}
複製代碼7、檢查是夠是有效的數組下標
function isValidArrayIndex(val) {
var n = parseFloat(String(val));
return n >= 0 && Math.floor(n) === n && isFinite(val)
}
複製代碼8、值轉換爲實際的字符串
function toString(val) {
return val == null ?
‘’ :
Array.isArray(val) || (isPlainObject(val) && val.toString === _toString) ?
JSON.stringify(val, null, 2) :
String(val)
}
複製代碼9、值轉換爲數字以進行持久化
function toNumber(val) {
var n = parseFloat(val);
return isNaN(n) ? val : n
}
複製代碼關注下面的標籤,發現更多相似文章

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章