原创 封裝彈窗組件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>封裝彈窗組件</title> <style type="tex
原创 面向對象的繼承(拷貝繼承)
什麼是繼承 在原有對象的基礎上,稍微修改後得到新的對象 不會影響原對象的功能 (子類不影響父類,子類可以繼承父類的一些功能) 屬性繼承 調用父類的構造函數,使用call方法改變this指向問題。 方法繼承
原创 CSS sticky footer
<div class="detail" v-show='detailShow'> <div class="detailWrap clearfix"> <div class="
原创 事件委託
事件委託原理: 利用冒泡的原理,把事件加到父級上,觸發執行效果。 好處: 1. 提高性能 2. 新添加的元素,還會有之前的事件 event對象事件源: 不管在哪個事件中,只要操作的那個元素就是事件
原创 快排
var arr = [1,8,9,3,7,5]; function quickSort(obj) { if (obj.length <= 1) { retu
原创 面向對象(二)
javaScript是基於原型的程序,儘量不要修改或者添加系統對象下的方法或者屬性。 push 原理 var arr = [1,2,3]; Array.prototype.push = function
原创 作用域解析及作用域鏈
預解析遇到重名,只留一個。如果與函數重名,就只留下函數。 console.log(a);// function a(){console.log(4)} var a = 1; console.log(a); //
原创 閉包
什麼是閉包 函數嵌套函數,內部函數可以引用外部函數的參數或者變量,外部函數不能引用內部函數的參數或者變量 function aaa(a) { var a = 5; function bbb() {
原创 判斷傳入的參數是否是數組
方法一: var arr = [1,2,3]; var obj = {name:'zhangsan'} console.log(Array.isArray(arr)); console.log(Array.isArray(obj)
原创 解析url
/** * 解析url參數 * @example ?id=123&a=b * @return Object {id:123,a:b} */ export function urlParse() { let
原创 數組去重
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>數組去重的4種方法</title> </head> <body>
原创 彈性盒模型(一)
彈性盒模型的父級元素必須要加display:box或者display:inline-box box-orient 定義盒模型的佈局方向 horizontal 水平顯示 vertical 垂直顯示 box-direction 元
原创 js技巧
定時器 setTimeout(function(num) { alert(num) }, 1000, 123); 字符串的拼接 window.onload = function() {
原创 面向對象的繼承(類式繼承)
類式繼承 通過構造函數繼承的方式 function Aaa() { this.name = [1,2,3]; } function Bbb() { Aaa.call(this); } function F(
原创 BOM 和 DOM
什麼是 BOM ? 1.瀏覽器對象模型 Browser Object Model 2.BOM的核心對象是window,同時window也是JavaScript的全局對象 3.BOM主要負責來對瀏覽器窗口進行操作和窗口與窗口之