
JS 常用知识
文章平均质量分 77
FireBird_one
这个作者很懒,什么都没留下…
展开
-
cookie与session的区别
Cookie概念 在浏览某些 网站 时,这些网站会把 一些数据存在 客户端 , 用于使用网站 等跟踪用户,实现用户自定义 功能. 是否设置过期时间: 如果不设置 过期时间,则表示这个 Cookie生命周期为 浏览器会话期间 , 只要关闭浏览器,cookie就消失了.转载 2017-11-28 11:47:18 · 177 阅读 · 0 评论 -
JS操作cookie的方法
cookie 是以 key=value 并用 分号+空格 连接。 如:userName=leo; passWord=123456//设置cookiefunction setCookie(key, value, t) { // t为过期时间var oDate = new Date();oDate.setDate( oDate.getDate() + t );d原创 2017-11-28 11:27:23 · 332 阅读 · 0 评论 -
JSON.parse() 与 JSON.stringify() 与 serialize() 的使用
1,JSON.parse() 将字符串解析成对象 (注意:单引号写在{}/[]外,每个属性名都必须用双引号,否则会抛出异常) var str1 = '{ "name":"leo" , "sex":"man" , "job":"coder" }'; console.log(JSON.parse(原创 2017-07-13 13:31:33 · 1405 阅读 · 0 评论 -
JS中call和apply的区别
call和apply的说明1、call,apply都属于Function.prototype的一个方法,它是JavaScript引擎内在实现的,因为属于Function.prototype,所以每个Function对象实例(就是每个方法)都有call,apply属性。既然作为方法的属性,那它们的使用就当然是针对方法的了,这两个方法是容易混淆的,因为它们的作用一样,只是使用方式不同。原创 2017-12-05 17:33:06 · 432 阅读 · 0 评论 -
字符串substring和substr的用法 与 数组splice和slice的用法
substring substr ==> 用于字符串1,substring(start,end)开始和结束的位置,从零开始的索引start 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。stop 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,原创 2017-12-05 17:11:24 · 731 阅读 · 0 评论 -
js操作符类型转换大全(前端面试题之操作符)
操作符运算符,在前端的面试题目中经常出现,很多朋友在对其运算的时候经常出错。说明对操作符运算还没有完全理解,我前面的一篇文章,javascript双等号引起的类型转换,主要讲解双等号引起的类型转换。本篇文章可以说是对这篇文章的补充吧!首先,我们先来做一些题目吧!为了统一,我不混着来写这些题目,面试题目中,经常将这些题目混起来,这样对你的迷惑度会更大,为了更方便演示,我在这里分模块写了一些题原创 2017-12-05 16:53:34 · 300 阅读 · 0 评论 -
原生JS封装的ajax请求
/* * JS封装ajax()函数使用方法: * *ajax({ * method: "GET"/"POST", * url: "test.php", * async: true异步/false同步, * data:{ * name: "leo", * sex: "男"原创 2017-12-05 16:01:48 · 566 阅读 · 0 评论 -
jquery属性的相关js实现方法
元素操作Add Class//JQUERY$(el).addClass(className);//js//谷歌浏览器,火狐浏览器,IE8+if (el.classList) el.classList.add(className);else el.className += ' ' + className;//谷歌浏览器,火狐浏览器,IE10+el.classLis转载 2017-12-05 11:27:23 · 272 阅读 · 0 评论 -
every() 、fliter()、forEach()、map()、some()
forEach() 方法对数组的每一个元素执行一次提供的函数。map() 方法创建一个新数组,其结果是该数组都执行一次函数,原函数保持不变。filter() 方法使指定函数测试数组的每一个元素,并放回一个通过元素的新数组。some() 方法测试该数组有元素通过了指定函数的测试,如果有返回true,否则,返回false。every() 方法测试该数组是原创 2017-12-05 10:44:18 · 308 阅读 · 0 评论 -
移动端根据屏幕大小自动设置body字体大小
(function (doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize', recalc = function ()转载 2017-12-13 15:04:56 · 2179 阅读 · 0 评论 -
闭包
特征:1,函数嵌套函数;2,内部函数可以引用外部函数的参数和变量,参数和变量不会被垃圾回收机制所收回;好处:1.希望一个变量长期驻扎在内存当中2.避免全局变量的污染3.私有成员的存在用法:1.模块化代码2.在循环中直接找到对应元素的索引问题:IE下会引起内存泄漏eg1:函数嵌套函数,内部函数引用外部函数的变量;原创 2017-12-04 17:16:40 · 212 阅读 · 0 评论 -
localStorage和sessionStorage的使用
相信很多人都见过这两个关于HTML5的新名词!HTML5种的web storage包含两种存储方式:localStorage和sessionStorage,这两种方式存储的数据不会自动发给服务器,仅仅是本地保存,有大小限制。localStorage是持久化的本地保存,除非主动删除,不然会一直存在,而且在所有的同源窗口中都是可以共享的;sessionStorage转载 2017-11-28 11:58:57 · 231 阅读 · 0 评论 -
clientWidth、offsetWidth 等区别
网页可见区域宽:document.documentElement.clientWidth网页可见区域高:document.documentElement.clientHeight网页可见内容区域宽:document.body.clientWidth网页可见内容区域高:document.body.clientHeight网页可见区域宽:document.body.offsetWidth (包括边线的...转载 2018-03-01 14:04:45 · 587 阅读 · 0 评论 -
图片预加载与懒加载
懒加载与预加载的基本概念。 懒加载也叫延迟加载:延迟加载图片或符合某些条件时才加载某些图片。 预加载:提前加载图片,当用户需要查看时可直接从本地缓存中渲染。 两种技术的本质:两者的行为是相反的,一个是提前加载,一个是迟缓甚至不加载。懒加载对服务器前端有一定的缓解压力作用,预加载则会增加服务器前端压力。 懒加载的意义及实现方式有: 意义: 懒加载的主要目的是作为服务器前端的优化,减少请求数或...原创 2018-03-02 10:34:11 · 667 阅读 · 0 评论 -
this指向问题详解
首先必须要说的是,this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁,实际上this的最终指向的是那个调用它的对象(这句话有些问题,后面会解释为什么会有问题,虽然网上大部分的文章都是这样说的,虽然在很多情况下那样去理解不会出什么问题,但是实际上那样理解是不准确的,所以在你理解this的时候会有种琢磨不透的感觉),那么接下来我会深入的探讨这个问题。 为什么...转载 2018-11-14 15:49:21 · 453 阅读 · 0 评论 -
原生Js实现复制功能的方法总结,execCommand和clipboardData的使用
原生Js实现复制(Copy)的两种方法,一种是利用 clipboardData,另外一种则是用 execCommand(),今天将统一讲解一下关于他们的使用方法。 document.execCommand当一个HTML文档切换到设计模式(designMode)时,文档对象暴露 execCommand方法,该方法允许运行命令来操纵可编辑区域的内容。大多数命令影响文档的选(粗体,斜体等),...转载 2018-11-09 21:46:27 · 490 阅读 · 0 评论 -
url的三个js编码函数escape(),encodeURI(),encodeURIComponent()简介
引子浏览器URl地址,上网一定会用到,但是浏览器地址有中文或者浏览器url参数操作的时候,经常会用到encodeURIComponent()和decodeURIComponent()以及encodeURI()等等。关于浏览器参数操作,请看文章http://www.haorooms.com/post/js_url_canshu ,今天主要讲讲escape(),encodeURI(),encode...转载 2018-10-26 17:35:05 · 354 阅读 · 0 评论 -
原生JS操纵cookie
cookie概述 在上一节,曾经利用一个不变的框架来存储购物栏数据,而商品显示页面是不断变化的,尽管这样能达到一个模拟 全局变量的功能,但并不严谨。例如在导航框架页面内右击,单击快捷菜单中的【刷新】命令,则所有的JavaScript变量都会丢失。因此,要实现严格的 跨页面全局变量,这种方式是不行的, JavaScript中的另一个机制:cookie,则可以达到真正全局变量的要求。 cookie...转载 2018-08-14 11:34:40 · 526 阅读 · 0 评论 -
原生JS forEach()和map()遍历的区别以及兼容写法
一、原生JS forEach()和map()遍历共同点: 1.都是循环遍历数组中的每一项。 2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项item,当前项的索引index,原始数组input。 3.匿名函数中的this都是指Window。 4.只能遍历数组。1.forEach() 没有返回值。...转载 2018-07-25 17:10:02 · 263 阅读 · 0 评论 -
JS 常用方法 -- 生成随机数、深拷贝
//生成随机数export const getUUID = function (len) { len = len || 6; len = parseInt(len, 10); len = isNaN(len) ? 6 : len; var seed = "0123456789abcdefghijklmnopqrstubwxyzABCEDFGHIJKLMNOPQRSTUVWXYZ...原创 2018-07-25 14:45:13 · 259 阅读 · 0 评论 -
javascript用户密码加密,js密码加密
今天总结几种javascript用户密码加密的方法,虽然前端当中密码加密不经常用,一般在后端加密之后存入数据库。今天主要列举一下前端js加密方法,以后可能也用得到!1、base64加密在页面中引入base64.js文件,调用方法为: <!DOCTYPE HTML><html><head><meta charset="utf-8"><...转载 2018-06-23 14:45:32 · 2945 阅读 · 0 评论 -
javascript中BOM部分基础知识总结
一、什么是BOM BOM(Browser Object Model)即浏览器对象模型。 BOM提供了独立于内容 而与浏览器窗口进行交互的对象; 由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是window; BOM由一系列相关的对象构成,并且每个对象都提供了很多方法与属性; BOM缺乏标准,JavaScript语法的标准化组织是ECMA,DOM的...转载 2018-06-22 22:24:20 · 293 阅读 · 0 评论 -
js 中编码(encode)和解码(decode)的三种方法
js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 下面简单介绍一下它们的区别1 escape()函数定义和用法 escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。语法 escape(string)参数 描述 str...转载 2018-06-22 22:23:25 · 5253 阅读 · 0 评论 -
onmousewheel跟onscroll的区别
onmousewheel事件 该事件发生在鼠标滚轮滚动时,火狐中,使用DOMMouseScroll跟其细节事件代替。注意:onmousewheel和DOMMouseScroll事件,在没有滚动条或者内容没有被滚动的时候也会发生,意思是只要鼠标动不管页面动不动。如果你是想一个元素内容滚动后接受一个通知的话,使用onscroll事件。onscroll事件 事件发生在元素内容滚动的时候,也...转载 2018-05-31 17:21:46 · 2182 阅读 · 0 评论 -
JS面向对象基础讲解(工厂模式、构造函数模式、原型模式、混合模式、动态原型模式)
什么是面向对象?面向对象是一种思想!(废话)。 面向对象可以把程序中的关键模块都视为对象,而模块拥有属性及方法。这样我们如果把一些属性及方法封装起来,日后使用将非常方便,也可以避免繁琐重复的工作。接下来将为大家讲解在JS中面向对象的实现。 工厂模式 工厂模式是软件工程领域一种广为人知的设计模式,而由于在ECMAScript中无法创建类,因此用函数封装以特定接口创建对象。其实现方法非常简单,...转载 2018-03-05 14:08:54 · 326 阅读 · 0 评论 -
函数申明与函数表达式
解析器在向执行环境中加载数据时,对函数声明和函数表达式并非一视同仁。解析器会率先读取函数声明,并使其在执行任何代码之前可用(可以访问);至于函数表达式,则必须等到解析器执行到它所在的代码行,才会真正被解释执行。1,函数申明 alert(sum(10,10)); function sum(num1,num2) { return num1+num2;原创 2017-12-04 16:03:02 · 348 阅读 · 0 评论 -
JS与JQ中iframe获取子父级页面元素的方法
JQuery1. jquery 在iframe子页面获取父页面元素代码如下: $("#id", parent.document) //获取父页面 $("#id")的元素2. jquery在父页面 获取iframe子页面的元素 $("#id",document.frames('iframename').document) //获取子页转载 2017-12-20 10:33:21 · 4897 阅读 · 0 评论 -
判断IE浏览器或者火狐浏览器
//判断是否为IEfunction isIE() { if (!!window.ActiveXObject || "ActiveXObject" in window) return true; else return false;}//判断是否火狐function isFF() { var isFireFox原创 2017-11-16 15:42:39 · 777 阅读 · 0 评论 -
拖拽、移动元素的JS原生函数
oDiv.onmousedown = function (ev) { var ev = ev || window.event; disX = ev.clientX - oDiv.offsetLeft; disY = ev.clientY - oDiv.offsetTop;原创 2017-04-18 11:14:44 · 1342 阅读 · 0 评论 -
JS原生通过id,class,tagname 来获取元素的方法
var get = { byId: function (id) { return typeof id === "string" ? document.getElementById(id) : id }, byClass: function (sClass, oParent原创 2017-04-18 11:10:46 · 4092 阅读 · 0 评论 -
星级评分系统
$(function () { var aA = $("a"); var timer; var iStar = -1; var unitil = [{ score: "1分", impress: "很不满意",原创 2017-03-16 17:24:34 · 1056 阅读 · 0 评论 -
绑定事件、删除事件兼容性封装
var aInput = document.getElementsByTagName("input"); var EventUntil = { addHandler: function (oElment,sEvent,fn) { oElment.addEventListener ? oElment.addEve原创 2017-03-16 17:21:12 · 385 阅读 · 0 评论 -
JS 阻止冒泡与阻止默认事件
oA.onclick = function (ev) { var ev = ev || window.event; //阻止冒泡 ev.cancelBubble = true; //IE ev.stopPropagation(); //W3C原创 2017-03-21 16:08:17 · 333 阅读 · 0 评论 -
菜单栏用定位的方式来确定子菜单的位置,根据长度来计算居左还是居右
站长之家 行业资讯 业界动态| 收购融资| 门户动态|原创 2017-02-23 16:57:23 · 1183 阅读 · 0 评论 -
JS 倒计时
02分钟30秒 window.onload = function(){ var aSpan = document.getElementsByTagName("span"); var oInput = document.getElementsByTagName("input")[0]; var num = parseInt(aSpan[0].innerHTML)*原创 2017-02-22 17:24:00 · 349 阅读 · 0 评论 -
JS 系统时间
年 月 日 : 时 分 秒window.onload = function(){ var aInput = document.getElementsByTagName("input"); function showTime(){ var oDate = new Date();原创 2017-02-22 17:03:12 · 492 阅读 · 0 评论 -
JS 计算器
By- FireBird_one c % ÷ × 7 8 9 - 4 5 6 + 1 2 3 = 0 .转载 2017-02-22 16:04:37 · 587 阅读 · 0 评论 -
输入框去空格正则 以及 switch 的用法
是否为两位数 window.onload = function(){ var oInput = document.getElementsByTagName("input")[0];var oBtu = document.getElementsByTagName("button")[0]; oInput.onkeyup = function(){this.原创 2017-02-22 14:15:28 · 598 阅读 · 0 评论 -
Math 的用法
Math.abs( x ) 返回 X 的绝对值 eg: Math.abs( -10 ) = 10; Math.abs( 20 ) = 20;Math.min( x , y ) 返回的是 X, Y 中的最小值 eg: Math.min( 2, 10 )原创 2017-02-21 17:33:17 · 732 阅读 · 0 评论 -
JS带缓存效果的移动函数封装
function startMove(obj, iTarget, fnEnd) { clearInterval(obj.timer); obj.timer = setInterval(function () { var iX = (iTarget.x - obj.o原创 2017-04-18 11:25:39 · 594 阅读 · 0 评论