- 判断一个函数是否为 JavaScript 内置方法的方法
function isNative(Ctor) {
console.log(Ctor.toString()) // function slice() { [native code] }
return typeof Ctor === 'function' && /native code/.test(Ctor.toString())
}
console.log(isNative(Array.prototype.slice)) // true
// 搭配判断是否含有 Symbol 类型
var hasSymbol =
typeof Symbol !== 'undefined' && isNative(Symbol) &&
typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);
- 将某元素从数组中移除
function remove(arr, item) {
if (arr.length) {
var index = arr.indexOf(item);
if (index > -1) {
return arr.splice(index, 1)
}
}
}