- 博客(53)
- 收藏
- 关注
原创 前端学习路线
1. HTML CSS基础学习地址:https://www.w3school.com.cn/html/html_jianjie.asp视频地址: https://ke.qq.com/course/231570?taid=2955805083273362实战仿淘宝:https://ke.qq.com/course/3476022. JavaScriptjs视频地址:https://ke.qq.com/course/231577?taid=12795824266512537进阶:《JavaS
2022-01-27 15:07:25
776
1
原创 JZJZJZ---最小的k个数
题目描述输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。示例 1:输入:arr = [3,2,1], k = 2输出:[1,2] 或者 [2,1]示例 2:输入:arr = [0,1,2,1], k = 1输出:[0]代码:var getLeastNumbers = function(arr, k) { var newArr = []; quickSort(arr, 0, arr.l
2020-11-19 11:08:39
37877
原创 JZJZJZ---从尾到头打印链表
题目描述输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。示例输入:head = [1,3,2]输出:[2,3,1]代码 var reversePrint = function(head) { var arr = []; while(head != null) { arr.push(head.val); head = head.next; } return arr.reverse();};...
2020-11-11 16:22:34
13460
原创 JZJZJZ---数组中出现次数超过一半的数字
题目描述数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例:输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]输出: 2代码:思路:利用对象特性 function MoreThanHalfNum(arr) { var len = arr.length; var obj = {}; arr.map(function(num) {
2020-11-11 16:16:15
5957
原创 同源策略和跨域
什么是同源策略同源策略就是浏览器因安全性需要而诞生的一个策略。所谓同源,就是要三同:同协议,同域名,同端口号。其中任意一个不相同,都不能称之为同源。浏览器执行JavaScript脚本时,会检查这个脚本属于哪个页面,如果不是同源页面,就不会执行。跨域解决办法(1) JSONPJSONP实现原理:由于浏览器同源策略的限制,网页中无法通过Ajax请求非同源的接口数据。但是script标签不受浏览器同源策略的影响可以通过src属性,请求非同源的js脚本。因此,JSONP的实现原理就是通过sc..
2020-11-05 21:12:56
214
原创 函数柯里化
函数柯里化比如我们现在有这样一个函数,传入一个学生的学校,专业和名字三个参数。对这三个数据做一点处理然后再输出。接触函数柯里化之前的都是这样的思想: function say(school, academy, name) { console.log('我的学校是'+school+',我的专业是'+academy+',我的名字是'+name+'。'); } say('西邮', '计科', '张三'); //我的学校是西邮,我的专业是计科,我的名字是张三。 say('
2020-11-05 21:11:45
183
原创 真正了解event loop
Event Loop机制是什么?在开始介绍event loop之前,还需要了解两个概念,宏任务和微任务。宏任务和微任务是异步任务的两种分类:宏任务包括:script,setTimeout/setInterval等微任务包括:Promise,Object.observer等了解完之后,我们来看看它到底是个啥。Event loop,按照字面意思翻译就是 事件循环。事件,就是处理异步任务,处理宏任务和微任务,而循环就是循环去出处理。我们先来看张图:(这是浏览器的event loop)首先执行的
2020-10-22 20:40:13
278
原创 Javascript事件流事件模型事件委托
事件事件流事件是与浏览器交互的瞬间,如点击按钮,填写表格等,它是js与html之间交互的桥梁。事件流有两种:事件冒泡:是一种从下网上的传播方式。事件最开始由具体的元素,然后逐渐向上传播到最不具体的那个节点,也就是DOM种最高层的父节点。事件捕获:与事件冒泡相反。事件最开始由不太具体的节点最早接受事件,而最具体的节点最后接受事件。事件模型JavaScript中的事件模型主要分为3种:原市事件模型、DOM2事件模型、IE事件模型DOM0级模型这是一种被所有浏览器都支持的事件模型,有两种方
2020-10-22 15:46:09
323
原创 vue-router(二)
vue-router全局守卫我们之前虽然成功的让自由跳转到想要的路由,但是有没有发现一个问题,每个页面的标题都是固定的,那我们要如何改变每个网页的标题呢?HTML:我们可通过<title>来显示,要主动的去给你每一个网页添加title标签JS: 我们可以通过window.document.title = '新的标题'来修改标题VUE:那我们来考虑一下,在VUE项目中,要在哪里修改呢?比较容易想到的方法就是在每个组件中,在created生命周期函数中,添加修改标题代码来修改。 crea
2020-10-07 02:04:48
176
原创 vue-router(一)
配置在router/index.js //先引入vue文件 import home from '../components/home' //通过Vue.use安装插件 Vue.use(VueRouter); //创建VUeRouter对象 const router = new VueRouter({ routes:[ //配置路径和组件之间的映射关系 //....此处为path路径 和 com
2020-10-07 02:04:40
303
原创 看完这篇blog你要是还不能理解Promise那就.........
Promise1. 什么是Promise呢?第一次接触promise的时候一脸蒙不知道这个东西是什么?是干什么的?包括看了官方文档后还是不太清楚2. Promise到底是做什么的呢?其实是一种异步编程的解决方案3. 那我们什么时候能用到它呢?网络请求我们封装一个网络请求的函数,因为不能立即拿到结果,所以不能像简单的1+1=2一样将结果返回。所以往往我们会传入另外一个函数,在数据请求成功时,将输入通过传入的函数回调出去。如果知识一个简单的网络请求,那么这种方案不会给我们带来很大的麻烦。
2020-10-07 02:04:08
535
原创 Vuex详解
Vuex是做什么的?官方解释: Vuex是一个专为Vue.js应用程序开发的状态管理模式它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化好多新名词!!!听不懂~~ 不要着急 慢慢来比如说我们这里有三个组件,若组件一中有种状态组件二想使用 组件三也想使用,那我们应该把这个状态存放到哪里呢?那么你就可以将状态管理先看成把需要多个组件共享的变量全部存储在一个对象里面。要是用之前所学的方法我们可以这样实现: const shareObj = {
2020-10-07 02:03:22
243
原创 props中的驼峰标识
当我们在props中用到驼峰时,此时组件的标签中的v-bind就不能写成驼峰式。因为v-bind只能不能识别大写字母为了避免这种情况发生,我们尽量少用驼峰格式,如果迫不得已的话,我们可以在用v-bind的时候稍微修改一下,例如: <div id="app"> <cpn v-bind:my-child-message=""></cpn> </div...
2019-10-29 17:53:54
805
原创 组件中data为什么是函数
组件中data为什么是函数首先我们来看这样一段代码: function abc() { return { name: 'romance', age: 18 } } var obj1 = abc(); var obj2 = abc(); var obj3 = abc(); obj1.name='kob...
2019-10-29 01:43:07
669
原创 计算属性和methods的对比
当时用methods打印变量四次时:我们可以看到在控制台打印了四次 ‘fullName’我们在来看看用computed 计算属性时:我们可以看到此时控制台只打印了一次:...
2019-10-27 23:01:19
639
2
原创 BOM
window对象方法之钱用的一些方法其实就是BOM,例如:alert();blur();clearInterval()cleatTimeout()…下面我们看看相对来说比较重要的:window.confirm(’’) 和 alert(’’) 差不多,就是多了 确定和取消按钮。当点击确定的时候它会返回 true ,当点击取消的时候他会返回 false。window.open(...
2019-08-03 15:37:40
146
原创 正则表达式
RegExp var reg = /abc/; var str = 'abcd';*reg.test(str)====>true* var reg = /[1234567890][1234567890][1234567890]/g; //三个连着的数字范围(1234567890) var str = "2312jo3gh123789d4najdiic923jf"; var r...
2019-08-02 21:00:03
295
原创 flex
Flex布局:一个样例引入flex布局(水平垂直居中) <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">...
2019-08-01 22:12:00
380
原创 异步加载时间线
异步加载jsdefer异步加载,但要等到dom文档全部解析完才会被执行。只有IE能用,也可以将代码写道内部。<script defer="defer"></script><script defer></script>aysnc (W3C标准方法)异步加载,加载完就执行,async只能加载外部脚本(只能写src=""),不饿能把js写在...
2019-07-30 21:04:19
168
原创 Ajax
Ajax:XMLHttpRequest 对象var request = new XMLHttpRequest封装一个适应其他浏览器和IE6,IE5: var request; if(window.XHMHttpRequest) { request = new XMLHttpRequest(); }else{ request = new ActiveXObject('Micros...
2019-07-29 15:25:42
157
原创 事件
获取事件on : onxxxx一个对象的一个事件只能绑定一个函数dom.addEventListener(时间类型,处理函数,false);能给一个事件绑定多个处理函数(不能给一个函数绑定多次)div.addEventListener(‘click’, function(){console.log(‘a’);},flase);-IE 独有div.attachEvent(‘on’...
2019-07-26 11:57:30
333
原创 DOM基本操作
查看滚动条的滚动距离window.pageXOffset/pageYOffsetIE9以下:document.body.scrollLeft/scrollTopdocument.documentElement.scorllLeft/TOP在低版本浏览器使用的时候可以把啷个加起来使用。、封装一个可以查看滚动距离的方法:function getScrollOffset() { ...
2019-07-25 16:13:53
159
原创 节点
get<div> <strong></strong></div><div> <span> <strong></strong> </span></div>querySelector('div > span strong')//querySelectorA...
2019-06-23 19:51:28
148
原创 数组
数组构造数组:var arr = new Array(10);var arr1 = [10];上面这两种方法不一样,第一个是创建一个长度为十的数组,第二个是创建一个长度为一的而且值为10的数组.方法 :push 往数组里面装东西push方法重写 :Array.prototype.push() = function() { for(var i = 0; i <...
2019-06-19 22:42:46
112
原创 this agruments 克隆
// var hang = { // wife1 : {name : 'xiaozhang'}, // wife2 : {name : 'xiaowen'}, // wife3 : {name : 'xiaoqiang'}, // sayWife : function(num){ /...
2019-06-17 22:59:18
121
原创 区分数组和对象的三种方法
区分数组和对象的三种方法:[].constructor //ƒ Array() { [native code] }var obj = {};obj.constructor//ƒ Object() { [native code] }[] instanceof Array //truevar obj = {};obj instanceof Array //false...
2019-06-16 13:58:25
2099
原创 javascript xiaozhishi
闭包使变量私有化:<script> var name = heheh; var init = (function() { var name = abc; function callName() { console.log(name); } return function () { callName(); } }()) var initZha...
2019-06-11 21:28:01
112
原创 duixaing jicheng 2
call()可以改变 this 的指向;demo:<script> function Person(name, age) { this.name = name; this.age = age; } var person = new Person('zhang', 19); var obj = { } Person.call(obj,'wenqiang', 20...
2019-06-10 19:51:56
165
原创 原型链 继承
charCodeAt()charCodeAt() 方法可返回指定位置的字符的 Unicode 编码。这个返回值是 0 - 65535 之间的整数。var str = "123abc张文强";var n = str.length;function byteLength(str) { // for(var i = 0; i < str.length; i++) { // if(st...
2019-06-04 21:21:45
128
原创 5.30
javascript学习逗号运算符 ,var a = (2, 3);a = 3;先看前面的表达式如果前面要计算的话先计算,然后看后面的表达式要计算就计算;然后把后面表达式的值返回:JavaScript中为假的值有6个分别是:undefinedNaN0“”nullfalse虽然这几个值都为假 但他们不一定都相等:for exmple:console.log( ...
2019-05-30 20:55:22
208
原创 预编译 作用域 闭包
预编译函数的预编译发生在函数执行的前一刻;window.prompt ( ’ input ’ ) // 输入(字符串形式)parsetInt(window.prompt(’ input ’ )); //转化成数字型;未经声明的变量归window所有;a = 123; or a = b = 123; ( 暗示全局变量 ) ;一切声明的变量都是window的属性...
2019-05-26 22:17:58
185
原创 #延时提示框效果
Javascript学习延时提示框效果简单说明:定时器(setInterval (函数,时间ms) 间隔型,一直进行(一旦开启就会一直进行下去 )setTimeout(函数, 时间ms)延时行,开启后只执行一次。停止计时器:clearIntervalclearTimeout) 运用 js 的简单的事件效果 运用**开始计时器**和**...
2019-05-25 23:15:39
184
原创 定时器
javascript 练习getElementByTagName我们可以把这个分解一下分成:get Elements By TagName,分别是 “选择” “一组元素” “标签名” 。这个用在选择多个标签的时候,例如对多个 < p > 用上相同的 id 名,我们可以不用一个一个的网行内面添加,可以直接再js代码里面写用上 getElementByTagName 一串代码就可以搞...
2019-05-07 20:37:24
113
原创 点击显示 消失效果
我们写下这么一串代码 ( 行内 js 的代码 ):<html><head><style>#div1{height:100px;width:100px;background-color:#f40;}.box{height:200px;width:200px;background-color:green;}</style>&...
2019-05-07 19:49:48
943
原创 快速排序
快速排序要点:先找关键字;从数组最后面的开始查找,只要比关键字大,就继续查找(此时j–)/交换位置,从前面开始查找;从前面开始的售后,直到有数据比他大,就交换;当 i==j 结束。主要使用递归思想,找到关键字,一般都是一第一个为中间字,然后先从后面比较,发现比关键字小的之后交换位置,再从左边开始遍历,如果发现比关键字大的再交换位置。具体代码如下:#include<stdi...
2019-05-04 21:35:50
128
原创 onmouse cikick事件
JavaScriptonmouseover事件简单的说就是鼠标移在 div 上面会发生相应样式的变化。和 css 里面的 :hover 伪类一样。使用:<!DOCTYPE html><html><head> <title></title> <style type="text/css"> #div1{ hei...
2019-04-28 01:08:49
245
原创 javascript运算
Javascript运算赋值运算符顾名思义(简单的例子:将a赋给b)例子:var x = 2;var y = 3;console.log(x);// expected output: 2console.log(x = y + 1); // 3 + 1// expected output: 4console.log(x = x * y); // 4 * 3// ex...
2019-04-21 00:59:28
231
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人