
JavaScript
文章平均质量分 58
lalalalala~
前端菜鸟一个
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JavaScript 核心之一 —— BOM
window 对象 BOM 的核心对象是 window,它表示浏览器的一个实例。 由于 window 对象同时扮演着 ECMAScript 中 Global 对象的角色,因此所有在全局作用域中声明的变量、函数都会变成 window 对象的属性和方法。 如果页面中包含框架,则每个框架都拥有自己的 window 对象,并且保存在 frames 集合中。在 frames 集合中,可以通过数值索引(从 0...原创 2018-10-23 10:43:20 · 324 阅读 · 0 评论 -
常用排序方法 —— JavaScript 实现
一、冒泡排序 function bubbleSort(arr) { var len = arr.length; var temp; for (var i = 0; i < len; i++) { for (var j = 0; j < len - 1 - i; j++) { if (arr[j] > ar...原创 2018-10-26 16:46:09 · 226 阅读 · 0 评论 -
javascript 继承&原型链
原型对象 prototype 每个函数都有一个 prototype 属性,这个属性是一个指针,指向函数的原型对象。 原型对象有一个属性 constructor ,这个属性包含一个指向 prototype 属性所在的函数(构造函数)的指针 当调用构造函数创建一个实例,这个实例内部将包含一个指针,指向构造函数的原型对象。 当为对象实例添加一个属性时,这个属性就会屏蔽原型对象中保存的同名属性,但不会...原创 2018-10-26 17:11:23 · 197 阅读 · 0 评论 -
深拷贝 && 浅拷贝
待续。。。原创 2018-10-26 18:03:01 · 173 阅读 · 0 评论 -
浏览器渲染流程
网页生成的过程 HTML 代码转化成 DOM CSS 代码转化成 CSSOM(CSS Object Model) 结合 DOM 和 CSSOM ,生成一颗渲染树(包含每个节点的视觉信息) 生成布局(layout),即将渲染树的所有节点进行平面合成 将布局绘制(paint)在屏幕上 回流和重绘 回流(reflow):某个部分变化影响了布局,需要重新渲染 重绘(repaint):改变某个元素的背...原创 2018-10-24 12:52:25 · 307 阅读 · 0 评论 -
JavaScript 运行机制:Event Loop
JavaScript 是单线程语言。单线程就意味着需要排队,前一个任务完成才能执行下一个任务。所以任务分为两种,同步任务和异步任务。 同步任务指的是,在主线程上排队执行的任务,只有前一个任务执行完毕,才能执行下一个任务。 异步任务指的是不进入主线程,而进入“任务队列”的任务,只有任务队列通知主线程,某个异步任务可以执行了,该任务才会进入主线程执行。 不同的任务源会被分配到不同的 Task 队列...原创 2018-10-24 18:26:11 · 220 阅读 · 0 评论 -
JavaScript 数组常用方法
有一天被问到了一个题,感觉很有意思,如下: new Array(6) new Array(6, 6) //上诉两行代码,分别创建了什么? 检测数组 var arr = []; arr instanceof Array Array.isArray(arr) 转换方法 toString() 返回以逗号分隔的数组中的值组成的字符串 valueOf() 返回数组对象的原始值...原创 2018-10-27 16:47:37 · 154 阅读 · 0 评论 -
JavaScript 字符串常用方法
字符方法 charAt() charCodeAt() var stringValue = "hello world"; alert(stringValue.charAt(1)); //"e alert(stringValue.charCodeAt(1)); //输出"101" 字符串操作方法 concat() 拼接多个字符串,返回新的字符串;(+)更好用 s...原创 2018-11-01 10:56:18 · 263 阅读 · 0 评论 -
JavaScript 防抖 && 节流
函数防抖和节流都是为了防止一个函数被无意义的高频率调用。 多次触发事件,防抖只会执行最后一次;节流会隔一段时间执行一次。 防抖 防抖是指,某些代码不可以在没有间隔的情况下连续执行。第一次调用函数,创建一个定时器,在指定的时间间隔之后运行代码。当第二次调用函数是,清除前一个定时器并设置另外一个。 如果前一个定时器已经执行,那么这个操作就没有什么意义。然而,如果前一个定时器尚未执行,那就是将其替换成一...原创 2018-11-01 11:30:21 · 187 阅读 · 0 评论 -
HTML 的 attribute 和 JS 的 property 的异同详解
同样是获得 element 的 style 属性,有两种方式 el.style 和 el.getAttribute(‘style’) 。前者我们叫 style 是 el 的 property ,后者我们叫style 是 el 的 attribute。 attribute attribute 是HTML DOM 对象自带(特有)的属性,在 html 中显式的设置,例如 id,class ,value...原创 2018-10-26 14:25:22 · 1190 阅读 · 0 评论 -
call() 和 apply() 的作用与区别
call() 和 apply() 简单来说,call() 和 apply() 的作用就是改变 this 的指向,区别就是传参列表不同。 猫吃鱼,狗吃肉,奥特曼打小怪兽 有一天,狗想吃鱼了 猫.吃鱼.call(狗,鱼) 狗就吃到鱼了 猫成精了,想打怪兽 奥特曼.打怪兽.call(猫,小怪兽) objA.call(objB, arg1, arg2, ...) objA.apply(objB, [ar...原创 2018-10-23 15:57:45 · 612 阅读 · 0 评论 -
JavaScript 闭包理解
js闭包 涉及原理 js链式结构 垃圾回收机制 一、变量作用域 全局变量 局部变量 函数内部可以直接读取全局变量,函数外部无法读取函数内部的局部变量 二、从函数外部读取局部变量 解决方法:在函数内部在定义一个函数 function f1() { var n = 1; function f2() { alert(n); } } 在上诉代码中,函数 f...原创 2018-10-20 15:58:53 · 2309 阅读 · 5 评论 -
JavaScript 对象&设计模式
js 对象&设计模式 对象 概念 无序属性的集合,其属性可以包含基本值、对象或者函数。”严格来讲,这就相当于说对象是一组没有特定顺序的值。对象的每个属性或方法都有一个名字,而每个名字都映射 到一个值。正因为这样,我们可以把对象想象成散列表: 无非就是一组名值对,其中值可以是数据或函数。 对象的属性 数据属性: [[Configurable]]:表示能否通过 delete 删除属...原创 2018-10-20 15:18:52 · 245 阅读 · 0 评论 -
JavaScript 数据类型
js 数据类型&操作符 5种基本数据类型 & 引用数据类型 undefined null boolean number string & object typeof 操作符,不是函数 undefined —— 值未定义 boolean —— 布尔值 string —— 字符串 object —— 对象或者null number —— 数值 function —— 函数原创 2018-10-20 15:55:02 · 217 阅读 · 0 评论 -
javascript 垃圾回收机制
javascript垃圾回收机制 一、概念 和C#、Java一样JavaScript有自动垃圾回收机制,也就是说执行环境会负责管理代码执行过程中使用的内存,在开发过程中就无需考虑内存分配及无用内存的回收问题了。 JavaScript垃圾回收的机制很简单:找出不再使用的变量,然后释放掉其占用的内存,但是这个过程不是时时的,因为其开销比较大,所以垃圾回收器会按照固定的时间间隔周期性的执行。 二、变量生...原创 2018-10-20 15:51:55 · 610 阅读 · 0 评论 -
JavaScript 执行环境 & 作用域
js 执行环境& 作用域 执行环境 执行环境定义了变量或函数有权访问的其他数据,决定了它们各自的行为。每个执行环境都有一个对应的变量对象,环境中定义的所有变量和函数都保存在这个对象中,虽然我们编写的代码无法访问这个对象,但是解析器在处理数据时会用到。 全局执行环境是最外围的一个执行环境,通常为 window 对象。某个执行环境中的所有代码执行完毕之后,该环境被销毁,保存在其中的变量和函数...原创 2018-10-20 15:57:30 · 1137 阅读 · 0 评论 -
JavaScript 事件流
事件流描述的是从页面中接收事件的顺序。 事件冒泡 事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级向上传递到较为不具体的节点。 以下面的 HTML 页面为例: <!DOCTYPE html> <html> <head> <title>Event Bubblin原创 2018-10-23 14:35:54 · 568 阅读 · 0 评论 -
聊下 ajax 请求
Ajax 是无需刷新页面就能够从服务器取得数据的一种方法。 //1. 创建 xhr 对象 var xhr; if (window.XMLHttpRequest) { xhr = new XMLHttpRequest(); } else { xhr = new ActiveXObject('Microsoft.XMLHTTP') } // 状态发生变化时,函数会回调 xhr.onreadyst...原创 2018-10-23 15:34:44 · 133 阅读 · 0 评论 -
http 常用请求方法(GET、POST、PUT、DELETE)
GET GET 请求是最常见的请求类型,最常用于向服务器查询某些信息。 必要时,可以将查询字符串参数追加到 URL 末尾,以便将信息发送给服务器。 对于 XHR 而言,传入 open() 方法的 URL 末尾的查询字符串必须使用encodeURIComponent() 进行编码。 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。 POST请求可能会导致新的资源的建立和/或已有...原创 2018-11-26 16:27:34 · 4732 阅读 · 0 评论