code2021-l
Version:
前端自定义工具
157 lines (135 loc) • 15 kB
JavaScript
/*
* ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
* This devtool is neither made for production nor for readable output files.
* It uses "eval()" calls to create a separate source file in the browser devtools.
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
* or disable the default devtool with "devtool: false".
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
*/
(function webpackUniversalModuleDefinition(root, factory) {
if(typeof exports === 'object' && typeof module === 'object')
module.exports = factory();
else if(typeof define === 'function' && define.amd)
define([], factory);
else if(typeof exports === 'object')
exports["aUtils"] = factory();
else
root["aUtils"] = factory();
})(self, function() {
return /******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/ var __webpack_modules__ = ({
/***/ "./src/array/decleares.js":
/*!********************************!*\
!*** ./src/array/decleares.js ***!
\********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"map\": () => (/* binding */ map),\n/* harmony export */ \"reduce\": () => (/* binding */ reduce),\n/* harmony export */ \"filter\": () => (/* binding */ filter),\n/* harmony export */ \"find\": () => (/* binding */ find),\n/* harmony export */ \"findIndex\": () => (/* binding */ findIndex),\n/* harmony export */ \"every\": () => (/* binding */ every),\n/* harmony export */ \"some\": () => (/* binding */ some)\n/* harmony export */ });\nfunction map (array, callback){\n const arr = []\n // 遍历当前数组中的每个元素,调用callback 得到一个结果数据,添加arr中\n for (let index = 0; index < array.length; index++) {\n const element = array[index];\n const result = callback(element,index)\n arr.push(result) \n }\n return arr\n }\nfunction reduce(array,callback, initValue){\n // 结果为初始值\n let total = initValue\n // 遍历当前数组每个元素,调用callback得到一个累加的结果数据\n for (let index = 0; index < array.length; index++) {\n const element = array[index];\n total = callback(total,element,index) \n }\n // 返回结果\n return total\n }\n function filter(array,callback){\n const arr = []\n //遍历当前数组每个元素,调用callback得到一个布尔值,如果true ,将当前element添加到arr\n for (let index = 0; index < array.length; index++) {\n const element = array[index];\n let result = callback(element,index)\n if(result){\n arr.push(element)\n }\n \n }\n return arr\n }\nfunction find(array,callback){\n //遍历当前数组每个元素,调用callback得到一个布尔值,如果true ,返回当前元素\n for (let index = 0; index < array.length; index++) {\n const element = array[index];\n let result = callback(element,index)\n if(result){\n return element\n }\n \n }\n return undefined\n }\n function findIndex(array,callback){\n //遍历当前数组每个元素,调用callback得到一个布尔值,如果true ,返回当前下标\n for (let index = 0; index < array.length; index++) {\n const element = array[index];\n let result = callback(element,index)\n if(result){\n return index\n }\n \n }\n return -1\n }\n\n function every (array,callback){\n //遍历当前数组每个元素,调用callback得到一个布尔值,一旦是false 返回 false\n for (let index = 0; index < array.length; index++) {\n const element = array[index];\n let result = callback(element,index)\n if(!result){\n return false\n }\n \n }\n return true\n }\n function some (array,callback){\n //遍历当前数组每个元素,调用callback得到一个布尔值,一旦是true 返回 true\n for (let index = 0; index < array.length; index++) {\n const element = array[index];\n let result = callback(element,index)\n if(!result){\n return true\n }\n \n }\n return false\n }\n\n//# sourceURL=webpack://aUtils/./src/array/decleares.js?");
/***/ }),
/***/ "./src/function/apply.js":
/*!*******************************!*\
!*** ./src/function/apply.js ***!
\*******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"apply\": () => (/* binding */ apply)\n/* harmony export */ });\nfunction apply (fn,obj,args) {\n //处理obj是null或者undefind\n if(obj===undefined || obj===null){\n obj = window\n }\n // 给obj添加一个方法,tempFn 方法,this\n obj.tempFn = fn\n // 调用方法,传入参数,得到返回值\n const result = obj.tempFn(...args)\n // 删除这个方法\n delete obj.tempFn\n // 返回方法的返回值\n return result\n \n }\n \n\n//# sourceURL=webpack://aUtils/./src/function/apply.js?");
/***/ }),
/***/ "./src/function/bind.js":
/*!******************************!*\
!*** ./src/function/bind.js ***!
\******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"bind\": () => (/* binding */ bind)\n/* harmony export */ });\n/* harmony import */ var _call__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./call */ \"./src/function/call.js\");\n\nfunction bind (fn,obj,...args) {\n //返回一个新函数\n return (...args2) => {\n // 调用原来函数,指定this为obj,参数列表由args和args2依次组成\n return (0,_call__WEBPACK_IMPORTED_MODULE_0__.default)(fn,obj,...args,...args2)\n }\n }\n\n//# sourceURL=webpack://aUtils/./src/function/bind.js?");
/***/ }),
/***/ "./src/function/call.js":
/*!******************************!*\
!*** ./src/function/call.js ***!
\******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"call\": () => (/* binding */ call)\n/* harmony export */ });\nfunction call (fn,obj,...args){\n //处理obj是null或者undefind\n if(obj===undefined || obj===null){\n obj = window\n }\n // 给obj添加一个方法,tempFn 方法,this\n obj.tempFn = fn\n // 调用方法,传入参数,得到返回值\n const result = obj.tempFn(...args)\n // 删除这个方法\n delete obj.tempFn\n // 返回方法的返回值\n return result\n }\n\n\n//# sourceURL=webpack://aUtils/./src/function/call.js?");
/***/ }),
/***/ "./src/function/debounce.js":
/*!**********************************!*\
!*** ./src/function/debounce.js ***!
\**********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"debounce\": () => (/* binding */ debounce)\n/* harmony export */ });\n\n// 用来返回防抖函数的工具\nfunction debounce(callback,delay){\n return function(event){\n // 如果上次事件还没有真正处理,取消他\n // if(callback.timeoutId){ // 会查找原型连\n if(callback.hasOwnProperty('timeoutId')){ // 不会查找原型连\n clearTimeout(callback.timeoutId)\n }\n //发生事件发生指定事件后才调用处理事件的回调函数\n //启动定时器,只是准备真正处理\n callback.timeoutId = setTimeout(() => {\n // 正在处理事件\n callback.call(this,event)\n // 删除准备处理的事件\n delete callback.timeoutId\n },delay)\n \n \n }\n }\n\n//# sourceURL=webpack://aUtils/./src/function/debounce.js?");
/***/ }),
/***/ "./src/function/throttle.js":
/*!**********************************!*\
!*** ./src/function/throttle.js ***!
\**********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"throttle\": () => (/* binding */ throttle)\n/* harmony export */ });\n // 用来返回节流函数的工具函数\n function throttle(callback, delay){\n let pre = 0 // 默认值不要是Date。now() 第一次事件立即调用\n return function(event){ // 节流函数/真正的事件回调函数 this是发生的标签\n const current = Date.now()\n if(current-pre > delay){ // 只有离上一次调用callback的时间差大于delay\n // 调用真正处理事件的函数,this是事件源,参数是event\n callback.call(this.event)\n // 记录此次调用的时间\n pre = current\n } \n\n }\n }\n\n\n//# sourceURL=webpack://aUtils/./src/function/throttle.js?");
/***/ }),
/***/ "./src/main.js":
/*!*********************!*\
!*** ./src/main.js ***!
\*********************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"call\": () => (/* reexport safe */ _function_call__WEBPACK_IMPORTED_MODULE_0__.call),\n/* harmony export */ \"bind\": () => (/* reexport safe */ _function_bind__WEBPACK_IMPORTED_MODULE_1__.bind),\n/* harmony export */ \"apply\": () => (/* reexport safe */ _function_apply__WEBPACK_IMPORTED_MODULE_2__.apply),\n/* harmony export */ \"debounce\": () => (/* reexport safe */ _function_debounce__WEBPACK_IMPORTED_MODULE_3__.debounce),\n/* harmony export */ \"throttle\": () => (/* reexport safe */ _function_throttle__WEBPACK_IMPORTED_MODULE_4__.throttle),\n/* harmony export */ \"map\": () => (/* reexport safe */ _array_decleares__WEBPACK_IMPORTED_MODULE_5__.map),\n/* harmony export */ \"find\": () => (/* reexport safe */ _array_decleares__WEBPACK_IMPORTED_MODULE_5__.find),\n/* harmony export */ \"filter\": () => (/* reexport safe */ _array_decleares__WEBPACK_IMPORTED_MODULE_5__.filter),\n/* harmony export */ \"findIndex\": () => (/* reexport safe */ _array_decleares__WEBPACK_IMPORTED_MODULE_5__.findIndex),\n/* harmony export */ \"reduce\": () => (/* reexport safe */ _array_decleares__WEBPACK_IMPORTED_MODULE_5__.reduce),\n/* harmony export */ \"every\": () => (/* reexport safe */ _array_decleares__WEBPACK_IMPORTED_MODULE_5__.every),\n/* harmony export */ \"some\": () => (/* reexport safe */ _array_decleares__WEBPACK_IMPORTED_MODULE_5__.some)\n/* harmony export */ });\n/* harmony import */ var _function_call__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./function/call */ \"./src/function/call.js\");\n/* harmony import */ var _function_bind__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./function/bind */ \"./src/function/bind.js\");\n/* harmony import */ var _function_apply__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./function/apply */ \"./src/function/apply.js\");\n/* harmony import */ var _function_debounce__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./function/debounce */ \"./src/function/debounce.js\");\n/* harmony import */ var _function_throttle__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./function/throttle */ \"./src/function/throttle.js\");\n/* harmony import */ var _array_decleares__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./array/decleares */ \"./src/array/decleares.js\");\n// 入口js 向外暴露工具函数\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://aUtils/./src/main.js?");
/***/ })
/******/ });
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(__webpack_module_cache__[moduleId]) {
/******/ return __webpack_module_cache__[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = __webpack_module_cache__[moduleId] = {
/******/ // no module.id needed
/******/ // no module.loaded needed
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/************************************************************************/
/******/ /* webpack/runtime/define property getters */
/******/ (() => {
/******/ // define getter functions for harmony exports
/******/ __webpack_require__.d = (exports, definition) => {
/******/ for(var key in definition) {
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ }
/******/ }
/******/ };
/******/ })();
/******/
/******/ /* webpack/runtime/hasOwnProperty shorthand */
/******/ (() => {
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ })();
/******/
/******/ /* webpack/runtime/make namespace object */
/******/ (() => {
/******/ // define __esModule on exports
/******/ __webpack_require__.r = (exports) => {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/ })();
/******/
/************************************************************************/
/******/
/******/ // startup
/******/ // Load entry module and return exports
/******/ // This entry module can't be inlined because the eval devtool is used.
/******/ var __webpack_exports__ = __webpack_require__("./src/main.js");
/******/
/******/ return __webpack_exports__;
/******/ })()
;
});