javascript
编号90015478
这个作者很懒,什么都没留下…
展开
-
js树结构数据和数组相互转换方法
<script> var pub = { // tree 为当前树的数据源 key为父节点key值 treeTransArray: function(tree, key) { return tree.reduce(function(con, item) { var callee = argu...原创 2018-10-26 16:20:45 · 8715 阅读 · 0 评论 -
js 时间格式化
将yyyyMMddhhmmss转换为yyyy-MM-dd hh:mm:ssvar str="20170703051000";var nstr=str.substr(0,4)+"-"+str.substr(4,2)+"-"+ str.substr(6,2) +" "+ str.substr(8,2) +":" +str.substr(10,2)+":"+str.substr(12,2)原创 2017-09-21 10:36:42 · 290 阅读 · 0 评论 -
js reduce用法
1.使用reduce()对数值进行累加<script>var arr = [1,2,3,4,5]arr.reduce(function(prev,curr,index,array){ console.log(prev +curr); console.log(index); console.log(array) return prev + curr...原创 2017-08-31 14:42:27 · 503 阅读 · 0 评论 -
学习js扩展运算符
<!DOCTYPE html><html><head> <title>扩展运算符</title> <meta charset="UTF-8"> <meta name="description" content="" />原创 2017-06-01 12:10:18 · 806 阅读 · 0 评论 -
js制作吸附式导航
直接上demo:<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title><style>body{margin: 0;padding: 0;}#na原创 2017-03-27 14:17:37 · 1160 阅读 · 0 评论 -
js字符串处理总结
//1.字符串转换var num = 11;console.log(typeof(num))//typeof()用于检测数据类型//toString() 方法可把一个逻辑值转换为字符串,并返回结果。console.log(typeof(num.toString()));//String() 函数把对象的值转换为字符串。console.log(typeof(String(num)))...原创 2017-03-06 18:27:36 · 382 阅读 · 0 评论 -
js实现html下载到本地并生成pdf文件
1.前段时间需要实现一个页面下载到本地并生成pdf格式的文件的需求。<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>nick getBase64</title></head><body id=&qu原创 2017-03-06 13:54:00 · 10200 阅读 · 1 评论 -
js创建对象的几种模式
//1.工厂模式function createAnimal(name,color){ var o = new Object(); o.name = name; o.color = color; o.show = function(){ document.write("<br/>" +this.name + this.color) ...原创 2017-02-17 17:36:18 · 245 阅读 · 0 评论 -
js正则实现去除字符串前后空格
1.去除左空格function leftTrim(str){ return str.replace(/(^\s*)/g,"")}2.去除右空格function rightTrim(str){ return str.replace(/(\s*$)/g,"")}3.去除左右空格function trim(str){ return str.replace(/(^\...原创 2017-03-05 19:59:28 · 3528 阅读 · 0 评论 -
js reduce方法
1.使用reduce()对数值进行累加<script>var arr = [1,2,3,4,5]arr.reduce(function(prev,curr,index,array){console.log(prev +curr);console.log(index);console.log(array)return prev + curr});</script>2.将多个数组合并成原创 2017-11-30 17:05:09 · 2238 阅读 · 0 评论 -
使用when.js解决函数回调地狱
1.如果函数a2执行依赖a1的返回值就会将a2函数的调用方法写入a1的回调函数中,如果是$ajax请求就需要卸载success中,如果依赖过多就会产生毁掉地狱。如下:function a1(cb){setTimeout(cb,1000);console.log('a1 finish');} function a2(){console.log('a2 finish');}a1(a2);原创 2017-11-30 17:02:22 · 2052 阅读 · 1 评论 -
JS中typeof与instanceof的区别
这里写链接内容转载 2018-08-08 10:10:16 · 330 阅读 · 0 评论 -
一道js题 [] == ![] 引发关于严格运算符(===)和相等运算符(==)的思考?
前段时间看见这样一道js的题,[] == ![] 的结果,经过在chrome控制台中打印发现结果是true,才发现自己没有完全掌握好 “==”和”===”的底层比较原理。 于是查阅相关文档,关于”==” 和 “===”的总结: “===”叫做严格运算符,”==”叫做相等运算符。 严格运算符的运算规则如下: 1、如果类型不同,就[不相等] 2、如果两个都是数值,并且是同一...原创 2018-07-23 12:16:22 · 4090 阅读 · 3 评论 -
获取元素位置函数
function getRec(ele) { var _t = document.documentElement.clientTop, _l = document.documentElement.clientLeft, rect = ele.getBoundingClientRect(); return { top: rect.to...原创 2018-05-28 19:42:20 · 465 阅读 · 0 评论 -
span标签模拟input checkbox实现父子级选中同步,vuejs数据绑定
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <script src="https://unpkg.com/vue@2.4.4原创 2018-03-21 11:13:57 · 2129 阅读 · 0 评论 -
js 深拷贝
(1)方法1function copy(obj1,obj2){ var obj2=obj2||{}; for(var name in obj1){ if(typeof obj1[name] === "object"){ //先判断一下obj[name]是不是一个对象 obj2[name]= (obj1[name].constructor===Array)?[]:{};原创 2018-03-06 11:33:39 · 258 阅读 · 0 评论 -
js生成随机id方法
function randomRangeId(num){ var returnStr = "", charStr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; for(var i=0; i<num; i++){ var index = Math.r原创 2018-03-05 12:06:15 · 4240 阅读 · 0 评论 -
js常用函数库总结
/*1.深拷贝*///(1)function deepClone(obj) { if (!obj && typeof obj !== 'object') { return; } var newObj = obj.constructor === Array ? [] : {}; for (var key in obj) { if (原创 2018-01-16 10:05:08 · 4863 阅读 · 2 评论 -
es6学习-let,const
> <!DOCTYPE html> <html lang="en">> <head>> <meta charset="UTF-8">> <meta name="viewport" content="width=device-width, initial-scale=1.0">> <meta http-equiv="X-UA-Compatible" content="i原创 2017-12-06 11:31:06 · 150 阅读 · 0 评论 -
js数组排序两种写法(冒泡)
js实现数组的排序方法(sort方法)var arrObj = new Array (1,8,7,6);arrObj.sort();console.log(arrObj.join(","))如果自己想实现sort方法用冒泡排序的方式(推荐理由:简单易懂,稳定,貌似速度不能达到最优)(1)普通函数写法function arrSort(){ for(var i = 0;i&l...原创 2017-02-15 14:15:26 · 3923 阅读 · 0 评论 -
localStorage的存储数组对象的方式
localStorage存储数据的格式都是以字符串的形式来存储的,存储数组对象的方式就是将数组对象转为字符串,在读取的时候再将字符串转成数组对象操作的方式:存: var obj = {"name":"xiaoming","age":"16"} localStorage.setItem("userInfo",JSON.stringify(obj));取: var...原创 2017-02-10 09:53:34 · 8166 阅读 · 1 评论 -
es5 forEach 和 map 方法使用
<!doctype html><html lang="en"><head><meta charset="UTF-8"><title>es5数组方法</title></head><body><script>原创 2016-09-19 16:23:07 · 840 阅读 · 0 评论 -
javascript模块化1
<!doctype html><html lang="en"><head><meta charset="UTF-8"><title>Document</title><script src="http://apps.bdimg.com/libs/jquery/2.1.1/原创 2016-09-02 15:55:35 · 257 阅读 · 0 评论 -
基于jquery-ui-js和ajax的表单模糊搜索
使用方法:$("#input").autocomplete({ source:function(request,response){ $.ajax({ url: URL, type: "post", async: false, dataType:"json", ...原创 2016-08-05 13:45:33 · 387 阅读 · 0 评论 -
vue.js的增删改查
模版 * { margin: 0; padding: 0; font-family:Arial ,"微软雅黑"; } .list li{ border-bottom:1px solid #ccc; } .list li span{ di原创 2016-07-28 00:29:15 · 1786 阅读 · 0 评论 -
如何阻止事件冒泡和默认事件
首先说什么是冒泡呢,简单的意思就是,你本来想只触发一个时间,但是实际上却出发了N个事件。举例来说,有一个元素,如Span,你绑定了一个Click函数,你又为Div绑定了一个Click函数,而这个Span就在Div中,当你点击Span时,同时就会触发Span和Div的Click函数。这就是冒泡。那么怎么阻止冒泡行为呢$('span').bind("click",fun转载 2016-06-20 12:36:28 · 499 阅读 · 0 评论 -
javascript的同源策略
同源策略限制了一个源(origin)中加载文本或脚本与来自其它源(origin)中资源的交互方式。同源定义一.什么是同源策略 同源策略,它是由Netscape提出的一个著名的安全策略,现在所有的可支持javascript的浏览器都会使用这个策略。 为什么需要同源策略,这里举个例子: 假设现在没有同源策略,会发生什么事情呢?大家知道,JavaScr转载 2016-06-20 12:15:27 · 533 阅读 · 0 评论 -
js异步加载的三种方案
(1) defer,只支持IE defer属性的定义和用法 defer 属性规定是否对脚本执行进行延迟,直到页面加载为止。 有的 javascript 脚本 document.write 方法来创建当前的文档内容,其他脚本就不一定是了。 如果您的脚本不会改变文档的内容,可将 defer 属性加入到 <script> 标签中,以便加快处理文档的速度。因为浏览器知道它将能够安全地读...原创 2016-06-14 16:56:59 · 794 阅读 · 0 评论 -
javascript改变input radio的样式
<!DOCTYPE html><html><head> <title></title> <meta charset="utf-8" /> <style> .create_user_sex label,.create_user_state label原创 2016-05-20 16:24:10 · 2344 阅读 · 0 评论 -
时间格式化插件(时间戳转固定日期格式)
//时间格式化//var time1 = new Date().Format("yyyy-MM-dd");//var time2 = new Date().Format("yyyy-MM-dd hh:mm:ss"); Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": t...原创 2016-09-19 16:32:18 · 2845 阅读 · 0 评论 -
js初始化url参数方法
function GetArgsFromHref(sHref, sArgName) {//第一种方法 var args = sHref.split("?"); var retval = ""; if(args[0] == sHref) { return retval; } var str = args[1]; args ...原创 2016-09-20 15:03:37 · 1173 阅读 · 0 评论 -
js关于Function.prototype.bind
bind()方法会创建一个新函数,称为绑定函数。当调用这个绑定函数时,绑定函数会以创建它时传入bind()方法的第一个参数作为 this,传入 bind() 方法的第二个以及以后的参数加上绑定函数运行时本身的参数按照顺序作为原函数的参数来调用原函数。实际使用中我们经常会碰到这样的问题:function Person(name) { this.nickname = name; ...转载 2016-09-20 15:43:36 · 453 阅读 · 0 评论 -
多条件筛选搜索(仿招聘网站效果)
代码地址:https://github.com/yuedongxu/mutiselect-search原创 2016-11-21 18:10:29 · 2876 阅读 · 0 评论 -
vue组件及组件间通信
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title><script src='vue.js'></script>&l原创 2016-11-14 16:11:53 · 826 阅读 · 0 评论 -
ES6声明变量和箭头函数
Document//用var声明的变量外层的i始终都会被函数内部引用,不会被当作垃圾回收,最后都指向同一个ivar arr1 = [];for (var i = 0; i arr1[i] = function (){ return i }}console.log(arr1[5]());//以往为避免这个问题通常会用以下的原创 2016-11-10 11:16:01 · 1181 阅读 · 0 评论 -
获取url问号后的参数方法
//获取url参数function GetArgsFromHref(sHref, sArgName){ var args = sHref.split("?"); var retval = ""; if(args[0] == sHref) /*参数为空*/ { return retval; /*无需做任何处理*/ } var...原创 2016-06-23 16:55:38 · 10950 阅读 · 0 评论 -
数组去重的两种方法
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title></head><body><script>原创 2016-10-25 13:53:03 · 409 阅读 · 0 评论 -
表单验证公用方法
(function(){ common = { //正则验证函数 checkRegexName:function(str,regex,domEle,errorText){ //str=验证的值,regex=正则规则,domEle=this,errotText=错误提示描述 var self = $(domEle)...原创 2016-09-28 17:44:40 · 425 阅读 · 0 评论 -
javascript事件的三个阶段
js事件的三个阶段分别为:捕获、目标、冒泡1.捕获:事件由页面元素接收,逐级向下,到具体的元素2.目标:具体的元素本身3.冒泡:跟捕获相反,具体元素本身,逐级向上,到页面元素IE5.5:div---body---documentIE6.0: div---body---html---documentMozilla:div---body---html---document---...原创 2016-11-04 10:47:02 · 8922 阅读 · 1 评论 -
ES6新增属性笔记一
(1).let、const用法<script>var a = 2;{let a = 3;alert(a);}alert(a);//let 允许创建块级作用域,ES6 推荐在函数中使用 let 定义变量,let定义的变量不在变量提升const NUM = 1;NUM = 4;//const 声明的常量类似于指针,它指向某个引用,也就是说这个「常量」并非一成不变的...原创 2016-10-13 15:59:49 · 301 阅读 · 0 评论