- 博客(28)
- 收藏
- 关注
原创 JavaScript 之 浏览器异步加载
当我们刚学js的时候,应该就知道js是单线程,进行的是同步加载,会阻断 html 和 css 的加载线(因为js能够修改 html 和 css)js同步加载的缺点:加载工具方法没必要阻塞文档,过得js加载会影响页面效率,一旦网速不好,那么 整个网站将等待js加载而不进行后续的渲染等工作。js里面有些工具方法需要按需加载,用到加载,不用不加载???这时候就需要我们异步加载js。JavaS...
2018-08-05 17:56:45 431
原创 JSON
目录 JSON 是一种传输数据的格式json常用的两种方法JSON.parse(); string ———> json JSON.stringify(); json—————> string对于json也是刚刚了解,所以我就简单地说一下对json的理解,和json常用的方法。 JSON 是一种传输数据的格式json以对象为样板,本...
2018-08-04 13:08:07 419
原创 JavaScript之DOM节点类型 、遍历节点、节点的属性以及节点方法
先介绍一下节点类型都有哪些:一、节点类型节点类型 属性nodeType返回值 元素节点1属性节点2文本节点3注释节点(comment)8document9DocumentFragment11所以一般我们获取节点类型用 nodeType二、遍历节点树这种遍历可以遍历 文本类节点、注释节点、元素节点等。 任何浏览器都好使。<div > <strong>...
2018-06-11 12:30:51 10639 1
原创 精解Dom 选择器
DOM定义Dom : 全称 Doncument Object ModelDOM定义了表示和修改文档所需方案。DOM 对象即为宿主对象。由浏览器的厂商定义,用来操作 html 和 xml 功能的一类对象的集合。也有人称DOM是对html和xml的标准编程接口。DOM不能操作css,但是DOM可以通过html 间接操作css(行间样式),但不能操作css样式表表。例如: var div = do...
2018-06-09 17:59:00 355
原创 数组去重、字符串去重
数组去重我们先来理解一下:数组去重,顾名思义,就是去掉数组中重复的值,那么我们需要定义一个空数组,用来存放遍历过程中第一次出现的值,还需要定义一个对象,用在比较是否重复。下面看一下代码 //数组去重 Array.prototype.unique = function(){ var arr =[], obj = {}, len = this.length; ...
2018-06-08 10:42:37 1181
原创 JavaScript 之 callee / caller
callee首先说一下argument;arguments 是类数组对象,是一种特殊的对象,里面装有函数的实参列表,它的属性名是按照传入参数的序列来的。大家都知道,对象都会有属性,那么callee 就是 arguments 的一个属性。arguments.callee 指的是函数的引用(也就是函数自己)。//eg: function test(){ console.l...
2018-06-03 20:55:57 431
原创 JavaScript 之 this 详解
this指向js里面比较重要的内容下面介绍一下。this指向可以分以下四种情况:1、函数预编译过程 this ---> windowfunction Num(n){ var a = 12; var b = function(){};} Num(3);// 此时函数会产生预编译对象AO // AO{ // arguments:[1]; ...
2018-06-03 20:28:32 194
原创 JavaScript 之详解 es5.0 严格模式
什么是严格模式?现在浏览器都是在 es3.0 和 es5.0 的基础上新增方法使用的,但是es3.0 和 es5.0 产生冲突的部分就是用 es5.0 ,否则用es3.0;那么产生冲突的部分使用的就是es5.0 的严格模式。严格模式的定义 "use strid" 作用:启用es5.0 不再兼容es3的一些不规则语法。使用全新的es5规范。 两种用法: 1、全局严格模式(写在页面最顶端...
2018-06-03 19:52:54 1032 1
原创 JavaScript 之 try ....catch 异常处理 、常见错误类型
try ...catch 是一个比较实用捕捉错误的方法。语法:try{ //代码可以正常执行,当里面有错,不会抛出错误 } catch(e){ //当try里面的代码不出错,catch里面的代码是不会执行的; //如果try里面的代码出错,catch会把try里面错误的信息捕捉到,错误有一堆错误信息,(//...
2018-06-03 18:09:24 2786
原创 JavaScript 之 type方法的封装——辨别变量类型
说到变量类型的辨别,我们一般会想到typeof方法,但是对于原始值的包装类,如果用typeof();会只显示object 当然我们用Object.prototype.toString.call(new String)来判断的时候控制台打印'[object String]' 但是不免有些麻烦所以,封装出一个type方法,使得那些特殊的变量都能让我们很清楚地辨别出其类型。下面看代码:function ...
2018-06-02 19:32:35 1724 1
原创 JavaScript 之 类数组
类数组就是长得像数组,可以当数组用,也可以当对象用,但不是数组。 1、可以利用属性名模拟数组特性。 2、可以动态的增长length属性。 3、如果强行让类数组调用push方法, 则会根据length属性值的位置进行属性的扩充。 arguments[] 就是类数组 function test(){ conso...
2018-06-02 19:13:12 334
原创 JavaScript 之数组 总结
数组的定义: new Array(length/content); var arr = new Array(); var arr = new Array(10); //--->括号里面第一位参数表示数组的长度arr.length = 10; 字面量...
2018-06-02 19:01:41 300
原创 js之克隆
克隆这个词语,从表面上我们都能明白啥意思,就不多说了,直接介绍算法实现。克隆分为浅度克隆和深度克隆。浅度克隆克隆一些简单的原始值。用到的知识: 对象枚举(遍历)...
2018-06-02 14:50:40 262
原创 对象、包装类、构造函数
说起对象,我们不会太陌生,大家一定知道‘万物皆对象’,那么今天我们来讲一下JavaScript中的对象。对象对象是也是一种 基础的变量类型。 对象里面包括属性和方法首先来说一下对象的创建方法:有三种。1、对象字面量/对象直接量(PlainObject)var obj = {}2、利用构造函数来实例化对象 (1)系统自带 eg: new Object(); Array...
2018-06-02 13:54:07 505 3
原创 浏览器的三个精度Bug
三个bugbug 010.14 * 100 会发生精度偏差 14.000000000000002解决方法:Math.ceil(123.234); //向上取整 ---->124Math.floor(123.789); //向下取整 --->124bug 02Math.random(); 随机数eg:for(var i = 0; i < ...
2018-05-27 11:14:47 927
转载 CSS命名规范
CSS书写顺序 1.位置属性(position, top, right, z-index,display, float等) 2.大小(width, height, padding, margin) 3.文字系列(font, line-height, letter-spacing,color- text-align等) 4.背景(background, border等) 5.其他(anim...
2018-05-26 12:49:28 287
原创 三种方法辨别 数组与 对象
三种方法辨别 数组[] 与 对象{} 第一种方法 利用constructor 控制台打印:[].constructor -----> f Array(){[native code]} var obj = {} 控制台打印 obj.constructor ----->f Object(){[native code]} 第...
2018-05-25 21:36:25 1130
原创 对象枚举
对象枚举枚举其实就是遍历(enumeration)for in 目的: 遍历对象语句:for(var 变量名 in 对象)var obj = { name : "zhangsan", sex : 'boy', age : 18, } for(var prop in obj){ console.log(prop +...
2018-05-25 21:32:53 1392 1
原创 JavaScript继承模式、命名空间
继承模式继承的发展史 1、传统形式 (原型链) 点击了解原型链 过多的继承了没用的属性 2、借用构造函数 (call 、 apply) 点击了解call和apply 不能继承借用构造函数的原型 ...
2018-05-24 13:05:07 446
原创 JS 之call 和 apply
一、call作用:改变this指向导致的表象:调用别人的函数来实现自己的功能。call 是方法里面的属性举例子解释一下:function Person(name,age){ //this == obj this.name = name; this.age = age; } var pe...
2018-05-20 22:58:34 193
原创 原型、原型链
原型1、定义:原型是function对象的一个属性,它定义了构造函数制造出的对象的公共祖先。通过该构造函数产生的对象,可以继承该原型的属性和方法。原型也是对象2、利用原型特点和概念,可以提取公有属性。3、对象如何查看原型 ———>隐式属性__proto__4、对象如何查看对象的构造函数 ——>constructor 俗称构造器下面依次举例解释一下:1、原型是function对...
2018-05-20 20:30:59 361
原创 JS作用域、立即执行函数、闭包
作用域 首先先介绍一下作用域等一些基础概念。 每个JavaScript函数都是一个对象,对象中有些属性我们可以访问,但有些不可以,这些属性仅供JavaScript引擎存取,[[scope]]就是其中一个。[[scope]] : 指的就是我们所说的作用域,其中存储了执行期上下文的集合作用域链 : [[scope]] 中所存储的执行期上下文对象的集合,这个集合呈链式链接,我们把这种链接叫做作用域...
2018-04-27 12:58:29 4105 2
原创 js 预编译
递归递归有两个重要的步骤: 1、找规律 2、找出口注:阶乘、斐波那契数列是典型的递归的例子。js三部曲: 语法分析 预编译 解释执行全局变量1、imply global 暗示全局变量:即任何变量,如果未经声明就赋值,此变量就为全局对象所有。 eg: a = 123; //其中a为全局变量 eg: ...
2018-04-23 20:58:51 282
原创 JavaScript 之 typeof 操作符 及 类型转换
一、typeof操作符作用: 返回值的类型,类型转换。值得六种返回类型:Number string boolean object undefined function 这里说一下特殊的返回类型:返回值为object有三种情况:{}、null、数组类型[]返回值为undefined情况:undefined返回值为function情况:...
2018-03-30 21:12:49 715 2
原创 css实现背景模糊,但不影响背景上的内容
当我们插入背景图片时,又不影响内容的表达,我们可以让背景图片模糊。 下面介绍一下我所用到的方法。需要把背景图片和内容分别放在两个div里面方便我们管理,再对背景图片进行高斯模糊(filter属性)。下面看一下代码设置:html代码:<!DOCTYPE html><html lang="en"><head> <met...
2018-03-12 21:09:29 21304
原创 css实现元素水平垂直居中
在我学习的过程中,css中元素实现水平垂直居中还是蛮常用的,下面是我了解到的几种方法,希望对大家有帮助,大家有更好的方法,欢迎大家补充。元素水平居中的方法我了解到有5种,分别是 绝对定位利用负边距、绝对定位+margin:auto;、弹性盒子Flex、Transform和Table。首先HTML代码: <div class="wrap"> <div...
2018-03-11 15:34:21 265
原创 五大主流浏览器与其内核
浏览器最重要的或者最核心的部分是"Rendering Engine",可大概翻译为“渲染引擎”,不过我们通常称为“浏览器内核”。它主要负责对网页语法的解释并且渲染网页。 浏览器内核是浏览器的基础和依托。如果没有浏览器内核,那么浏览器是无法独立存在且产生作用的。它的存在,决定了网页的呈现内容、格式以及效果。所以说一个好的浏览器一定基于有一个稳定、高端、作用明显的浏览器内...
2018-03-09 20:10:37 388
原创 css样式
我们知道网页是由结构、样式、行为相组合而成。其中样式就是css。下面介绍一下有关css的引用样式。css (cascading style sheet)称为层叠样式表首先css引用可以有三种形式:1、行间样式 例如: <p style="color:red;">我是行间样式。</p>效果如下:2、页面级样式把css写在head标签内例如:<head&...
2018-03-09 13:18:50 190
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人