![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
javascript
狂兔
这个作者很懒,什么都没留下…
展开
-
JS 预编译过程
在谈预编译之前先说收 js 的运行过程运行过程 1.语法编译 2.预编译(通篇扫描) 3.解释执行语法执行:就是检查你的代码有什么低级错误 就是我们平常的编译器报错 (变量为声明就是使用会报错,只有用 typeof () 编译器不会报错)预编译:就是在内存中开辟一段空间存放 变量和函数解释执行:js 是一种解释性语言 编译一行执行一行,单线程的同一时间只能干一件事 关于...原创 2018-07-28 10:32:22 · 313 阅读 · 0 评论 -
JS-数组
克隆://便利对象 for(var prop in obj) 1.判断是不是原始值 typeof() 2.引用值判断是数组还是对象 //tostring instanceof construtor 3.建立相对应的数组或对象<script type="text/javascript"> var obj={ name:&quo原创 2018-08-18 09:38:32 · 119 阅读 · 0 评论 -
正则表达式
我们平常在写代码可能会遇见这样的问题:原创 2018-08-18 20:53:58 · 548 阅读 · 0 评论 -
浅谈call apply bind
初学call apply的时候看的是书,书上讲的很浅显,在网上看了很多博客讲的都很是高深,这里标题说是浅谈,其实本来想写的是深入,但是写到最后感觉自己所了解的远远不够,这里的this究竟指的是什么,与作用域又有什么关系?因为目前知识水平的限制,我就暂时先总结了一些。更加深层次的东西,我也将继续挖掘。。其实,call()和apply()就是改变函数的执行上下文,(也就是函数内部的this的指向)。...原创 2018-10-25 20:27:52 · 137 阅读 · 0 评论 -
js同步异步 回调函数
js同步异步同步 指的是一次只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。异步 是指每一个任务有一个或多个回调函数,前一个任务结束后,不是执行后一个任务,而是执行回调函数,后一个任务则是不等前一个任务结束就执行,所以程序的执行顺序与排列顺序不一定一致,是异步的。异步模式其实就是延迟处理。在和HTML交互的过程中,会需要一些IO操作(典型的就是A...原创 2018-10-21 16:05:39 · 3313 阅读 · 1 评论 -
canvas绘图
引入:canvas标签<canvas width="500px" height="500px"> </canvas&a原创 2018-11-04 14:37:54 · 1110 阅读 · 0 评论 -
页面的部分切换&csdn上传视频
我们时常会遇见这样的问题<!--html 代码--> <li onclick="opens(1)" class="choose-1原创 2019-02-03 11:40:40 · 158 阅读 · 0 评论 -
搜索框的默认提示文字
我们平常见到的搜索框,就比如csdn上的搜索框,当框内没有文字的时候会出现默认的提示文字,然而鼠标聚焦上去文字就会消失。效果图如下:<!--html代码--><div class="middle"> <div class=&am原创 2019-02-03 12:47:05 · 9352 阅读 · 1 评论 -
事件绑定传参 & 跳转页面传值
js解决动态绑定事件时不能传参的问题在写东西的时候会遇到这样的问题,想为事件绑定一个函数有人想这样写: (假如我现在想为div加入一个点击事件) var div = document.getElementsByTagName("div")[0]; div.onclick = fun(); function fun() { console.log("click!"); }...原创 2019-04-28 19:24:31 · 307 阅读 · 0 评论 -
前端路由
在谈前端路由之前,我们先了解一下:从输入URL到页面加载完成是一个怎样的过程1. 输入地址当我们开始在浏览器中 输入网址的时候,浏览器其实已经开始在智能的匹配可能得到的URL了,他会从历史记录、书签等地方,找到已经输入的字符串可能对应的URL,然后给出智能的提示。 对于Google chrome这种聪明的浏览器,他甚至会直接从缓存中把网页展示出来,也就是说在你还没有戳下enter键的...原创 2019-05-19 20:35:37 · 202 阅读 · 0 评论 -
前端路由之——hash
我们经常在 url 中看到 #,这个 # 有两种情况,一个是我们所谓的锚点,比如典型的回到顶部按钮原理、Github 上各个标题之间的跳转等,路由里的 # 不叫锚点,我们称之为 hash(哈希),大型框架的路由系统大多都是hash实现的。刚看完上面那段话,可能有人会有疑问:URL中的#是什么,如何用hash实现前端路由呢?别着急,往下看 ~~~首先我们来说一下URL中的井号(其实也叫 has...原创 2019-06-02 12:46:04 · 1954 阅读 · 1 评论 -
前端路由之——History
前面我们讲了前端路由之——hash的方法,今天我们来讨论一下前端路由的另一种方式——History ヽ(✿゚▽゚)ノ没有看上一篇文章的小伙伴可以返回查看我们的历史文章~~首先我们来说一下这个history是个啥嘞 ?js的history对象window.history 表示window对象的历史记录 1.window.history.back(),后退 2.window.h...原创 2019-06-20 22:10:49 · 395 阅读 · 0 评论 -
json
json 是一种传输数据的格式(以对象为样板,本质上就是对象,但用途有区别,对象就是本地用的,json是用来传输的) JSON.parse(); string-->json //字符串转换为对象 JSON.stringify(); json-->string //转换为字符串的json形式浏览器识别 html 代码,将代码的每一个节点放在 domTree 树...原创 2018-08-11 10:28:19 · 166 阅读 · 0 评论 -
事件分类
另一种事件捕获:(仅对IE 有用) div.setCapture(); div.releaseCapture();将页面中所有的事件揽在自己身上鼠标事件:click,mousedown,mousemove,mouseup (移动端:touchstart,touchmove,touchend) click=mousedown+mouseup<div style="b...原创 2018-08-06 20:38:31 · 437 阅读 · 0 评论 -
date 对象-定时器
日期对象常用操作:日期对象,是系统提供好的 在控制台输入: <script type="text/javascript">date = new Date; //记录出生时的日期 new出来后就不会改变 当然刷新页面会改变</script>get方法 获取date原创 2018-08-01 20:08:33 · 240 阅读 · 0 评论 -
理解 JS 原型
一个在prototype上的特殊操作 来看这段代码 输出结果和你想的是否一致呢?Person.prototype.name="sunny"; function Person(){ //执行new 操作相当于在此处 var this={__proto__原创 2018-07-28 10:31:53 · 180 阅读 · 0 评论 -
JS 事件1-触发-循环-解除
元素.on事件类型=function(){};句柄绑定一个对象的一个事件,只能绑定一个处理函数<div style="background-color: red;width: 50px;height: 50px;"></div>原创 2018-08-03 20:37:00 · 239 阅读 · 0 评论 -
JS 关于this对象
首先:在函数中this 到底取何值,是在函数真正被调用执行的时候确定的,函数定义的时候确定不了。1.构造函数 如果函数作为构造函数用,那么它里面的 this 就代表它将要 new 出来的的对象function A(){ this.name="xiaoming"; this.age="7"; console.log(this); //结果:A {name: &a原创 2018-07-30 17:17:23 · 696 阅读 · 1 评论 -
JS 作用域-闭包
运行期上下文: 函数执行的时候,会创建一个称为执行期上下文的内部对象。(类似于我们在预编译中所讲的AO对象)一个执行期上下文定义一个函数执行时的环境。函数每次执行时对应的执行期上下文 都是独一无二的,所以多次调用同一个函数会导致产生多个执行期上下问,当函数执行完毕,它所产生的执行期上下文将被销毁。作用域: [[scope]]指的就是我们所说的作用域,其中存储了运行期上下文的集合。作用...原创 2018-08-04 08:38:42 · 244 阅读 · 1 评论 -
JS 变量
Javascript是一种 解释语言,可以跨平台的单线程语言(同一时间只能干一件事,可以用来回切换 给视觉提供同时进行的效果)引入方式 (1)和CSS样式表一样可以从外部引入 (2)页面内嵌 可以加在< body >标签内部变量 由值决定类型 动态解释随时可以变换类型(Ⅰ)原始值 (1)number:v原创 2018-07-28 10:30:29 · 503 阅读 · 0 评论 -
JS 包装类
JS的数据类型: 基本类型:Undefined, Null, Boolean, Number, String 引用类型:Object, Array, Date, RegExp (其实就是对象)JS中只有对象才有属性和方法,原始值没有属性和方法 那么我们平常求字符串的长度 用length属性不是没有问题吗? var str="hello world"; var lon原创 2018-07-28 10:31:23 · 4044 阅读 · 1 评论 -
JS错误信息 & ea5.0 严格模式:
try…catchtry{ console.log("b"); console.log(b); //发现错误直接中断 console.log("c");}catch(e){ //error是一个对象,只有两项信息 (error.message error.name) console.log(e.name+":"+e.message);}consol..原创 2018-08-01 15:20:48 · 151 阅读 · 0 评论 -
DOM 查找节点
DOM 对象,用来操作 html 和 xml功能的一类对象的集合 (注意:css不可以被操作) 标签也就是 DOM 元素查:选择元素 方法的操作:documnet 代表整个文档document.getElementById(); 【按Id名选择 一个】//html<div id="only">hello原创 2018-08-01 15:21:11 · 2562 阅读 · 0 评论 -
DOM节点 增 插 删 改
增:(并没有增加到页面上!!)document.createElement(); //创建元素节点 (标签)<script type="text/javascript">var div=document.createElement('div'); //添加一个div标签 //创建后被JS攥在手里 并没原创 2018-08-01 15:21:29 · 198 阅读 · 0 评论 -
JS 立即执行函数
针对初始化功能的函数 执行完将函数立即释放(function abc(){ var a=111; var b=222; console.log(a+b);}())</script></body></html>当然这段代码的运行结果为:333,原创 2018-08-01 15:22:53 · 178 阅读 · 0 评论 -
JS 事件处理模型-事件冒泡-捕获
事件冒泡:结构上(非视觉上)嵌套关系的元素,会存在事件冒泡的功能,即同一事件,自子元素冒泡向父元素。(自底向上) (事件点击在子元素上 事件会一层一层向它的父元素传递 从结构上的子元素冒泡向父元素)focus, blur, change, submit, reset, select 等事件没有冒泡功能//css代码<div style="background-color原创 2018-08-06 09:37:48 · 215 阅读 · 0 评论