javascript点滴
文章平均质量分 60
javascript的知识点和应用
chunchun1230
这个作者很懒,什么都没留下…
展开
-
JS / 常用高阶函数
map()map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。map() 方法按照原始数组元素顺序依次处理元素。注意:map() 不会对空数组进行检测。注意:map() 不会改变原始数组。/** * @param currentValue 必须。当前元素的值 * @param index 可选。当前元素的索引值 * @param arr 可选。当前元素属于的数组对象 * @param thisValue 可选。对象作为该执行回调时使用,传递给函数,用作 "转载 2021-03-31 23:41:41 · 4095 阅读 · 0 评论 -
请描述一下cookies,sessionStorage和localStorage的区别?
⒈localStorage长期存储数据,浏览器关闭数据后不丢失;⒉sessionStorage数据在浏览器关闭后自动删除;⒊cookie是网站为了标识用户身份而存储在用户本地终端(Client Side)上的数据(通常经过加密)。cookie始终在同源的http请求中携带(即使不需要)都会在浏览器和服务器端间来回传递。session storage和local storage不会自动把数据发给服务器,仅在本地保存;⒋存储大小:cookie数据大小不会超过4K,session storag...转载 2020-12-01 11:51:55 · 364 阅读 · 0 评论 -
Promise.all和Promise.race的区别
Promise.all()可以将多个实例组装个成一个新实例,成功的时候返回一个成功的数组;失败的时候则返回最先被reject失败状态的值。适用场景:比如当一个页面需要在很多个模块的数据都返回回来时才正常显示,否则loading。promise.all中的子任务是并发执行的,适用于前后没有依赖关系的。let wake=(time)=>{ return new Promise(function (resolve,reject){ setTimeout(()=>{转载 2020-11-12 17:54:28 · 914 阅读 · 0 评论 -
数组的扩展运算符应用(十个随机数)
<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> </head> <body> <script> //扩展运算符,可以将一个数组转为用逗号分隔的参数序列. //完成:随机产生十.转载 2020-11-12 10:44:48 · 291 阅读 · 0 评论 -
ES6 入门——变量的解构赋值
1.ES6 声明变量的六种方法ES5 只有两种声明变量的方法:var命令和function命令。ES6 除了添加let和const命令,另外两种声明变量的方法:import命令和class命令。所以,ES6 一共有 6 种声明变量的方法。2.数组的解构赋值ES6 允许写成下面这样。let [a, b, c] = [1, 2, 3];上面代码表示,可以从数组中提取值,按照对应位置,对变量赋值。本质上,这种写法属于“模式匹配”,只要等号两边的模式相同,左边的变量就会被赋予对应转载 2020-11-11 12:55:51 · 439 阅读 · 0 评论 -
JS中使用typeof能得到哪些类型
typeof用于判断数据类型,返回值有6个字符串:string、number、undefined、boolean、object、functionarray、object、null、函数实例(new + 函数)通过typeof判断都为objectArray、Object、function(){}、(()=>{})、Function通过typeof判断都为functionconsole.log(typeof 'aa') // stringconsole.log(typeof 4) // .转载 2020-11-06 14:22:54 · 873 阅读 · 0 评论 -
js值类型和引用类型的区别
js值类型和引用类型的区别1.javascript中变量类型分为值类型(基本数据类型)和引用类型(1)值类型:String(字符串),Number(数值),Boolean(布尔值),Undefined,Null(2)引用类型:Array(数组),Object(对象),Function(函数)2.值类型和引用类型的区别(1)存储位置不一样①值类型的变量会保存在栈内存中,如果在一个函数中声明一个值类型的变量,那么这个变量当函数执行结束之后会自动销毁②引用类型的变量...转载 2020-11-06 14:01:34 · 469 阅读 · 0 评论 -
js 中 !!的用法
!!是将表达式强制转化为bool值的运算,运算结果为true或false,表达式是什么值,结果就是对应的bool值,不再取非。不是取非再取非的意思!!!!!false=false; 要注意false和“false” 的区别!!!!!!!"false"=true;!!true=true;!!(NaN || undefined || null || 0 || ' ')=false;...转载 2020-10-29 15:11:50 · 287 阅读 · 0 评论 -
算法:JS对象数组根据某属性分组方法
1、需要进行分组的数据,根据 StEntId 进行分组letListData=[{StEntId:1,StEntName:'企业名称企业名称',EsGrade:1,OrderDt:'2019-12-01'},{StEntId:1,StEntName:'企业名称企业名称',EsGrade:4,OrderDt:'2019-12-02'},{StEntId:2,StEntName:'企业名称企业名称',EsGrade:5,OrderDt:'201...转载 2020-09-09 18:24:55 · 2647 阅读 · 0 评论 -
JS - 获取文件后缀,判断文件类型(比如是否为图片格式)
http://www.hangge.com/blog/cache/detail_1754.html转载 2020-08-14 13:43:00 · 408 阅读 · 0 评论 -
padStart()方法,padEnd()方法
padStart()和padEnd()方法的使用用法(官方): padStart() 方法用另一个字符串填充当前字符串(重复,如果需要的话),以便产生的字符串达到给定的长度。填充从当前字符串的开始(左侧)应用的。padEnd() 填充从当前字符串的末尾(右侧)应用的。 理解:ES2017引入了字符创补全长度的功能。如果某个字符串不够指定长度,会在头部或者尾部补全。padStart() 用于头部补全,padEnd() 用于尾部补全。语法: str.padStart(tar..转载 2020-08-13 11:51:37 · 3685 阅读 · 0 评论 -
JS 日期格式和时间戳相互转化
1. 将时间戳转换成日期格式:function timestampToTime(timestamp) { var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 var Y = date.getFullYear() + '-'; var M = padding0(date.getMonth()+1,2)+ '-'; var D = padding0(date.getDate(),2)+ '转载 2020-07-02 16:25:52 · 1504 阅读 · 0 评论 -
ajax提交加随机数
原因:多次提交时,若URL不变,浏览器可能会直接调用缓存中的数据,而不发送新的请求;ajax提交在URL后加随机数时为了欺骗服务器这是一个新的请求;加随机数的方式有:1:在ajax或者dwr提交的url后面加时间戳。例如http_request.onreadystatechange = funcName;http_request.open(“GET”, url, true)...原创 2020-02-18 21:51:58 · 813 阅读 · 0 评论 -
js之Object.defineProperty()
Object.defineProperty()是 ES5 中的新对象方法。它允许您定义对象属性和/或更改属性的值和/或元数据。Object.defineProperty()语法:Object.defineProperty(obj,prop, descriptor)参数说明:obj:必需。目标对象prop:必需。需定义或修改的属性的名字descriptor:必需。...转载 2020-02-07 15:10:15 · 150 阅读 · 0 评论 -
Javascript中!!(两个感叹号,双感叹号)的含义
在javascript代码中经常会见到!!的情况,本文即以实例形式较为深入的分析javascript中2个感叹号的用法。分享给大家供大家参考之用。具体分析如下:javascript中的!!是逻辑"非非",即是在逻辑“非”的基础上再"非"一次。通过!或!!可以将很多类型转换成bool类型,再做其它判断。使用javascript时,有时会在变量前面加上两个感叹号,这样做表示什么含义呢?Java...转载 2020-02-05 00:15:07 · 488 阅读 · 0 评论 -
JS中typeof的用法
js是一门弱语言,它在声明变量时无需确定变量的类型,js在运行时会自动判断。那么如何判断一个变量的类型呢,js提供了typeof运算符,用来检测一个变量的类型。1. typeof的语法 typeof是一个运算符,有2种使用方式:typeof(表达式)和typeof 变量名,第一种是对表达式做运算,第二种是对变量做运算。2. typeof的返回值 typeof运算符的返...转载 2020-02-04 10:06:37 · 153 阅读 · 0 评论 -
js中的自执行匿名函数 (function(){})()
JS函数有两种命名方式1、声明式声明式会导致函数提升,function会被解释器优先编译。即我们用声明式写函数,可以在任何区域声明,不会影响我们调用。function XXX(){}2、函数表达式函数表达式我们经常使用,而函数表达式中的function则不会出现函数提升。而是JS解释器逐行解释,到了这一句才会解释。因此如果调用在函数表达式之前,则会调用失败。var...转载 2020-01-30 16:44:24 · 275 阅读 · 0 评论 -
JavaScript匿名函数_函数自我执行
一、什么是匿名函数匿名函数,顾名思义,就是没有名字的函数。二、匿名函数的使用1.首先我们声明一个普通函数: //声明一个函数,函数的名字叫fn function fn(){ alert('88888'); } 2.然后将函数的名字去掉即是匿名函数: //将函数的名字去掉就是匿名...转载 2020-01-30 16:25:19 · 188 阅读 · 0 评论 -
JavaScript对json对象数组排序(按照某个属性升降序排列)
var data=[ { name:'海外事业部', value:0.58 }, { name:'内销', value:0.36 ...原创 2020-01-16 09:12:17 · 368 阅读 · 0 评论 -
JS动态插入HTML后不能执行后续JQUERY操作
通过js追加的html 发现 不能点击 执行函数普通绑定事件:$('.btn1').click(function(){}绑定事件委托解决方法:$("body").delegate(".class","click",function(){});on绑定事件:$(document).on('click','.btn2',function(){}绑定...原创 2020-01-03 14:19:59 · 308 阅读 · 0 评论 -
jq checkbox 选中某一个选框。div显示 取消选中 div消失
<style> .s div {float:left;margin:10px;width:100px;height:100px;border:1px solid #ccc;} </style> <form> <input type="checkbox" name="g" value="1" /> a <input typ...原创 2019-12-26 13:56:11 · 601 阅读 · 0 评论 -
jquery判断字符串中是否包含特定字符的方法总结
方法一:使用indexOf() 和lastIndexOf()方法案例:var Cts = "bblText"; if(Cts.indexOf("Text") >= 0 ) { alert('Cts中包含Text字符串'); } indexOf用法:返回 String 对象内第一次出现子字符串的字符位置。strObj.indexOf(subString[, ...转载 2019-12-26 13:51:59 · 1650 阅读 · 0 评论 -
javascript创建对象的方式
1、var obj = {};(使用json创建对象)如:obj.name = '张三';obj.action = function (){alert('吃饭');};2、var obj = new Object();(使用Object创建对象)如:obj.name = '张三';obj.action = function (){alert('吃饭')原创 2017-07-10 13:57:12 · 168 阅读 · 0 评论 -
$.ajax()方法详解
jquery中的ajax方法参数总是记不住,这里记录一下。 1.url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址。2.type: 要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法,例如put和delete也可以使用,但仅部分浏览器支持。3.timeout: 要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖...转载 2018-04-26 13:09:59 · 117 阅读 · 0 评论 -
下拉刷新,上拉加载更多,超级好用的插件
近期做了一个项目需要用到下拉刷新,上拉加载更多,无意间在GitHub上面发现了这个插件,很小,只依赖于jQuery或Zepto就可运行。使用也很简单,下面贴上示例: 插件地址:http://ons.me/526.html 插件内容我就直接贴在博客最后面了,复制粘贴就能用了: 下面直接上示例: 示例一、加载底部<script>$(function(){ // 页数 ...转载 2018-04-26 09:39:02 · 801 阅读 · 0 评论 -
js获取URL的参数的方法(getQueryString)示例
代码如下:function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); var r = location.search.substr(1).match(reg); if (r != null) return unescape(decodeURI(r[2...转载 2018-04-24 16:51:39 · 2616 阅读 · 0 评论 -
前端常见跨域解决方案(全)
什么是跨域?跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。广义的跨域:1.) 资源跳转: A链接、重定向、表单提交2.) 资源嵌入: <link>、<script>、<img>、<frame>等dom标签,还有样式中background:url()、@font-face()等文件外链3.) 脚本请求: js发起的aja...转载 2018-04-24 16:10:23 · 189 阅读 · 0 评论 -
两个页面传递参数实现的几种方式
两个页面传递参数实现的几种方式1.使用window.name:a页面:b页面:2.使用h5中的localStorage:a页面:b页面: 3.使用url传递参数:a页面:b页面:原创 2018-04-24 12:34:40 · 10715 阅读 · 0 评论 -
No 'Access-Control-Allow-Origin' header is present on the requested resource.'Ajax跨域访问解决方案(转载)
郑重声明:本文转载自zhoucheng05_13的博客No 'Access-Control-Allow-Origin' header is present on the requested resource.当使用ajax访问远程服务器时,请求失败,浏览器报如上错误。这是出于安全的考虑,默认禁止跨域访问导致的。一、什么是跨域访问举个栗子:在A网站中,我们希望使用Ajax来获得B网站中的特定内容。如...转载 2018-04-26 13:10:40 · 158 阅读 · 0 评论 -
瀑布流布局详解
瀑布流概念:又称瀑布流式布局,是比较流行的一种网站页面布局方式。视觉表现为参差不齐的多栏布局,最早采用此布局的是网站是Pinterest,后逐渐在国内流行。 瀑布流原理:页面容器内的多个高度不固定的div之间按照一定的间隔参差不齐的无序浮动,鼠标滚动时不断在容器内的尾部加载数据,且自动加载到空缺位置,不断循环。 优点: 1.有效降低...转载 2018-05-04 16:07:30 · 924 阅读 · 0 评论 -
怎么使用jquery判断一个元素是否含有一个指定的类(class)
在jQuery中可以使用2种方法来判断一个元素是否包含一个确定的类(class)。两种方法有着相同的功能。2种方法如下:(个人喜欢用hasClass())1. hasClass(‘classname’)2. is(‘.classname’)以下是一个div元素是否包含一个redColor的例子:1. 使用is(‘.classname’)的方法$('div')...原创 2018-04-27 10:45:53 · 8779 阅读 · 0 评论 -
页面加载即执行JQuery的三种方法
【1】$(function( ){ }); $(function(){ $("#name").click(function(){ //adding your code here }); }); 123456【2】 $(document).ready(function( ){ }) $(document).ready(function(){ $("#name")...原创 2018-04-27 10:48:14 · 12925 阅读 · 0 评论 -
jQuery 清除div内容
$.ajax({ url: "SearchSN.aspx", data: "SN=" + $("#txtStorageSN").val(), cache: false, success: function (html) { $("#showResult").empty(); ...原创 2018-04-27 10:49:05 · 5785 阅读 · 0 评论 -
js清除浏览器缓存的几种方法
一、CSS和JS为什么带参数(形如.css?t=与.js?t=)怎样获取代码css和js带参数(形如.css?t=与.js?t=) 使用参数有两种可能: 第一、脚本并不存在,而是服务端动态生成的,因此带了个版本号,以示区别。 即上面代码对于文件来说 等价于 但浏览器会认为他是 该文件的某个版本! 第二、客户端会缓存这些css或js文件,因此每次升级了js或css文件后,改变版本号,客户端浏览器就会...转载 2018-04-28 11:10:18 · 268 阅读 · 0 评论 -
JS判断用户手机是IOS还是Android
$(function () { var u = navigator.userAgent, app = navigator.appVersion; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1; //g var isIOS = !!u.match(/\(i[^;]+;( ...原创 2019-02-25 12:03:56 · 183 阅读 · 0 评论 -
前端在html页面之间传递参数的方法
项目中经常会出现的一种情况,有一个列表,譬如是案例列表,点击列表中的某一项,跳转至详情页面。详情是根据所点击的某条记录生成的,因为案例和具体的详情页面,都是用户后期自行添加的,我们开始编写时,不可能穷尽。因此跳转页面时,我们需要传递一个参数过去,这样我们才能通过这个参数进行数据请求,然后根据后台返回的数据来生成页面。因此,通过a标签跳转的方式,肯定是行不通的。 我们经常写form表单,提交时,可以...原创 2018-04-24 10:20:34 · 710 阅读 · 0 评论 -
JS字符串转换为JSON的四种方法笔记
1、jQuery插件支持的转换方式: 示例: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象 2、浏览器支持的转换方式(Firefox,chrome,opera,safari,ie)等浏览器: 示例: JSON.parse(jsonstr); //可以将json字符串转换成json对象 JSON.s...转载 2018-04-19 15:18:17 · 1382 阅读 · 0 评论 -
webStorage是html5中用于本地化存储的一种方式
1.webStorage是什么?webStorage是html5中用于本地化存储的一种方式,而在之前呢我们是用cookie的存储方式处理;2.那它们之间的区别是什么?Ⅰ.cookie存在的问题:ⅰ.cookie需要向服务端发送一个请求,服务端返回一个cookieId,存储用浏览器缓存里,需消耗一定的带宽。[cookie会随着每次HTTP请求头信息一起发送,无形中增加转载 2017-08-16 15:29:34 · 620 阅读 · 0 评论 -
javaScript中的instanceOf的用法
在JavaScript中,判断一个变量的类型往往会使用typeof运算符,再使用typeof运算符是采用引用类型存储值会‘出现一个问题,无论引用的是什么类型的对象,他都返回‘object’。这就需要用到instanceof来检测某个对象是不是另一个对象的实例。另外,更重要得一点是instanceof可以在继承关系中用来判断一个实例是否属于它的父类型。列如:funct转载 2017-08-16 09:52:48 · 673 阅读 · 0 评论 -
Ajax页面缓存问题分析与解决办法
Ajax页面缓存是ajax处理数据时对一些重复相同数据进行一个缓存操作,这样从另一个层面对于我们来讲是非常的不错了,但有时我们并不希望它缓存要如何处理呢?下面我们一起来看看关于页面缓存问题分析与解决,希望例子对各位会带来帮助。一、什么是Ajax缓存原理?Ajax在发送的数据成功后,会把请求的URL和返回的响应结果保存在缓存内,当下一次调用Ajax发送相同的请求时,它会直接从原创 2017-08-01 19:48:43 · 430 阅读 · 0 评论