![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
文章平均质量分 50
糊涂面疙瘩
这个作者很懒,什么都没留下…
展开
-
从头认识JavaScript的事件循环模型
1. JS的运⾏机制介绍众所周知JavaScript是⼀⻔单线程的语⾔,所以在JavaScript的世界中默认的情况下同⼀个时间节点只能做⼀件事情,这样的设定就造成了JavaScript这⻔语⾔的⼀些局限性,⽐如在我们的⻚⾯中加载⼀些远程数据时,如果按照单线程同步的⽅式运⾏,⼀旦有HTTP请求向服务器发送,就会出现等待数据返回之前⽹⻚假死的效果出现。因为JavaScript在同⼀个时间只能做⼀件事,这就导致了⻚⾯渲染和事件的执⾏,在这个过程中⽆法进⾏。显然在实际的开发中我们并没有遇⻅过这种情况。关于同原创 2022-01-13 16:26:01 · 375 阅读 · 0 评论 -
javaScript运行机制
一、为什么JavaScript是单线程?JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。那么,为什么JavaScript不能有多个线程呢?JavaScript的单线程,与它的用途有关。作为浏览器脚本语言,JavaScript的主要用途是与用户互动,以及操作DOM。这决定了它只能是单线程,否则会带来很复杂的同步问题。所以,为了避免复杂性,从一诞生,JavaScript就是单线程,这已经成了这门语言的核心特征,将来也不会改变。为了利用多核CPU的计算能力,HTML5提出W原创 2021-12-01 09:34:54 · 211 阅读 · 0 评论 -
JS 字符串的常用操作方法有哪些?
操作方法我们也可将字符串常用的操作方法归纳为增、删、改、查1. 增这里增的意思并不是说直接增添内容,而是创建字符串的一个副本,再进行操作除了常用+以及${}进行字符串拼接之外,还可通过 concat concat 用于将一个或多个字符串拼接成一个新字符串let stringValue = "hello ";let result = stringValue.concat("world");console.log(result); // "hello world"console.log原创 2021-08-10 14:20:32 · 430 阅读 · 0 评论 -
vue的响应式原理是怎样实现的?
Vue 的异步更新机制的核心是利用了浏览器的异步任务队列来实现的,首选微任务队列,宏任务队列次之。当响应式数据更新后,会调用 dep.notify 方法,通知 dep 中收集的 watcher 去执行 update 方法,watcher.update 将 watcher 自己放入一个 watcher 队列(全局的 queue 数组)。然后通过 nextTick 方法将一个刷新 watcher 队列的方法(flushSchedulerQueue)放入一个全局的 callbacks 数组中。如果此时浏览器原创 2021-07-23 17:18:47 · 255 阅读 · 0 评论 -
call与apply与bind的用法和区别
call与apply与bind1.call:函数名.call(this的指向,参数1,参数2) function fun(){ console.log(this); } fun();//window fun.call(document); fun.call(1); //Number {1} fun.call("1"); //String {"1"} var name = "杜甫"; //window.nam原创 2021-06-08 17:40:33 · 75 阅读 · 0 评论 -
JavaScript 学习 第十四天 闭包与ajax
匿名函数匿名函数是没有名字的函数,一般自执行,function (){ console.log("匿名函数");}IIFE函数(立即执行函数)IIFE:Imdiately Invoked Function Expression 立即执行函数优点:避免全局污染,减少不必要的内存浪费var s = (function (a,b) { return a+b;})(10,2...原创 2019-11-17 20:45:23 · 153 阅读 · 0 评论 -
JavaScript 第十三天 面向对象
面向对象概念两种编程模式:面向过程:注重过程面向对象:注重结果 Js基于对象对象的特征: 封装 继承 多态 对象的组成:属性:静态的,对象的描述 --------------------- 变量方法:动态,对象的行为 -------------------------- 函数面向对象创建方式new(单例创建):创建出来的永远是一个对象 var obj1 = ...原创 2019-11-14 09:09:53 · 130 阅读 · 0 评论 -
JavaScript学习 第十二天 cookie与正则
一、cookieCookie 是浏览器访问服务器后,服务器传给浏览器的一段数据。浏览器需要保存这段数据,不会轻易删除(保存在计算机中)。此后每次浏览器访问该服务器,都必须带上这段数据。cookie 实际上是指小量信息,只能存储4KB,是由 Web 服务器创建的,将信息存储在用户计算机上的文件,比如用户登录某个网站,浏览器会提示是否保存用户名和密码方便下次登录,如果保存就是将信息保存在cooki...原创 2019-11-12 14:50:10 · 414 阅读 · 0 评论 -
JavaScript 学习第十一天 事件
1、事件对象添加事件的语法:元素.事件=function(){}事件处理函数:当事件发生的时候调用函数事件对象event,全局对象,当事件发生的时候,浏览器会将和事件相关的所有信息(事件类型,鼠标位置,事件目标)存储在事件对象中 document.onclick = function(ev){// console.log(window.event||ev); //低版本火狐...原创 2019-11-11 14:53:23 · 152 阅读 · 0 评论 -
JavaScript 学习 第十天 BOM操作
DOM操作表单1、DOM如何快速获取表单元素DOM中可以通过form.表单的name名称获取表单元素<form action=""> 请输入账号:<input type="text" name="userName"><br></form>var oForm = document.getElementsByTagName("f...原创 2019-11-09 09:44:07 · 221 阅读 · 0 评论 -
JavaScript 学习第九天 DOM 操作
js组成: ECMAScript:语法标准 DOM:Document Object Model : 文档对象模型 (操作标签) BOM:Broswer Object Model:浏览器对象模型DOM介绍文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口。在网页上,组织页面(或文档)的对象被组织...原创 2019-11-07 21:49:16 · 343 阅读 · 0 评论 -
js 学习第八天 数组与Math对象
数组对象1、数组的创建 //1.字面量 var arr = [1,2,3]; //2.关键字new var arr1 = new Array(1,2,3,"4"); console.log(arr1);2、添加数组元素通过下标添加arr[3] = 4;console.log(arr); // [1, 2, 3, 4]arr[10] = 1...原创 2019-11-04 19:53:17 · 147 阅读 · 0 评论 -
js 学习第七天 时间与字符串对象
1、对象的概念对象:在js里,一切皆为或者皆可以被用作对象。可通过new一个对象或者直接以字面量形式创建变量(如var i=“aaa”),所有变量都有对象的性质。注意:通过字面量创建的对象在调用属性和方法时会被对象包装器暂时包装成一个对象,具有对象的性质。如:var str="我不是一个真的对象";alert(str.length); //str被暂时包装成一个String对象,可调...原创 2019-11-03 15:19:24 · 160 阅读 · 0 评论 -
JavaScript 学习 第六天 定时器的使用
定时器1.定时器的分类定时器分为两类,延迟执行(setTimeout)、间歇执行(setInterval)延迟执行:延迟执行:setTimeout(函数,时间) : 时间单位ms 1s = 1000ms setTimeout(函数,1000); 延迟一秒执行函数一次 只执行一次 使用场景...原创 2019-11-01 16:24:39 · 278 阅读 · 0 评论 -
JavaScript 学习 第四天 自定义属性
day04自定义属性1、循环双重for循环for(var i = 0;i<2;i++){ //外循环循环父元素 var oLi = oUl[i].getElementsByTagName("li"); //通过父元素获取到子元素 for(var j = 0;j<oLi.length;j++){ //循环子元素 oLi[j].style.border = ...原创 2019-10-31 19:59:13 · 204 阅读 · 0 评论 -
JavaScript 学习 第三天
day03流程控制流程控制语句组成: 顺序结构 选择结构(分支语句):for for-in while do-while 循环结构:for for-in while do-while break/continue1、选择结构(分支语句)选择结构:选择结构用于判断给定的条件,根据判断的结果判断某些条件,根据判断的结果来控制程序的流程。if语法:if(条件...原创 2019-10-30 20:17:25 · 124 阅读 · 0 评论 -
JavaScript 学习 第五天
day05 函数1、函数函数:是由事件驱动的或者当他被调用时可重复使用的代码块document.onclick = function(){}function sum(){}sum()2、函数声明及使用范围普通的声明方式: 1、声明函数 function 函数名(){ 代码块 } 2、调用函数 函数名()表达式声明: ...原创 2019-10-30 20:15:37 · 122 阅读 · 0 评论 -
JavaScript 学习 第二天
第二天 js数据类型1.js数据类型六大类,5个基本数据类型,1个复杂类型(对象类型,引用类型)5个基本数据类型:Number,String,Boolean,null,undefined复杂类型Object(object,function,array)基本数据类型1.1 number整数,小数,八进制,十六进制,NaN(not a number)都属于number类型//1.Num...原创 2019-10-28 18:36:01 · 124 阅读 · 0 评论 -
javascript 学习day 01
JavaScript学习 day 01day01 js初识1、js历史网站组成:html:超文本标记语言 结构css:层叠样式表 样式JavaScript:脚本语言 交互js的组成:ECMAScript:核心 标准语法DOM:Document Object Model 文档对象模型BOM:Borwser Object Model 浏览器对象模型什么是JavaS...原创 2019-10-27 16:23:06 · 272 阅读 · 0 评论