JavaScript大杂烩
文章平均质量分 70
菜鸟搬砖记
世上无难事,只要肯放弃。。。
展开
-
JS中数组的那些事
1. 把对象中的keys转成数组 let obj = { a: 123, b: 321, c: 333, d: 567 } console.log(Object.keys(obj)); // ["a", "b", "c", "d"]2. 把字符串分割成数组 let str = "a,b,c,d"; console.log(str.split(',')); // ["a", "b", "c", "d"]原创 2021-04-29 13:49:53 · 146 阅读 · 0 评论 -
JS中的Math
常量和常用值Math.PI圆周率中的π console.log(Math.PI); //3.141592653589793Math.E欧拉常数和自然对数的基数 console.log(Math.E); //2.718281828459045Math.SQRT22的平方根 console.log(Math.SQRT2); // 1.4142135623730951Math的对象方法Math.max()返回一组数中的最大值 console.log(Math.max(1,3,原创 2021-04-27 09:36:52 · 227 阅读 · 0 评论 -
JS中的数据类型
数据类型简单数据类型:undefined / NULL / String / Number / Boolean复杂数据类型:Object1.undefined数据类型值定义后,没有初始化值定义后,用undefined来初始化let a;console.log(a); // undefined2.null数据类型空对象指针可用于对象变量的初始化 console.log(typeof null); // objectundefined和null的区别:null对象值为空,u原创 2021-04-26 17:25:50 · 128 阅读 · 0 评论 -
js中时间戳转时间格式
抽空写了一个时间戳转时间格式的方法,供大家参考,有问题留言! /**时间戳转时间格式 * @params timestamp需要转化的时间戳 format格式类型 * Y-M-D h:m:s 年-月-日(大写) 时:分:秒(小写) */ function timestampToTimeFormat(timestamp, fo...原创 2019-10-30 14:02:45 · 867 阅读 · 0 评论 -
js中slice,substr,substring,splice,split方法的区别
slice方法slice(start, end)用于字符串和数组截取,start开始截取的位置索引,end截取结束的索引值(不包含),end参数等于你要取的最后一个字符的位置值加上1slice返回的是一个新的数组,不改变原有数组slice(start, end)中start必需有。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒...原创 2019-10-21 14:39:16 · 896 阅读 · 0 评论 -
JS原生拖拽功能draggable属性(H5)
在html5中多了一个元素属性draggable,这个属性可以对元素进行拖拽<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scal...原创 2019-06-02 16:17:42 · 12592 阅读 · 0 评论 -
JS事件冒泡和事件代理(委托)
事件冒泡什么是事件冒泡?当一个元素接收到事件的时候,会把他接收到的事件传给父级,一直传到window (注意这里传递的仅仅是事件 并不传递所绑定的事件函数。所以如果父级没有绑定事件函数,就算传递了事件 也不会有什么表现 但事件确实传递了。)<!DOCTYPE html><html lang="en"><head> <meta charse...原创 2019-06-08 15:44:54 · 11543 阅读 · 0 评论 -
js中some和every用法
some用法some() 方法用于检测数组中的元素是否满足指定条件,如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。如果没有满足条件的元素,则返回false。注意:some() 不会对空数组进行检测。some() 不会改变原始数组。实例1: let arr = [1, 2, 3, 4, 5]; let flag = arr....原创 2019-09-10 11:33:48 · 10007 阅读 · 0 评论 -
JS中find方法
用法find() 方法返回通过测试(函数内判断)的数组的第一个元素的值。如果没有符合条件的元素返回 undefinedfind() 对于空数组,函数是不会执行的。find() 并没有改变数组的原始值。array.find(function(currentValue, index, arr),thisValue),其中currentValue为当前项,index为当前索...原创 2019-09-20 14:06:15 · 94402 阅读 · 7 评论 -
JS生成随机数
随机数Math.random() 为0到1之间的随机数(包括0,不包括1)[0, 1)Math.round(n) 为n四舍五入后的整数Math.ceil(n) 为大于等于n的最小整数Math.floor(n) 为小于等于n的最大整数实例例1:创建一个长度为10,元素范围为1到10之间的数组 { const arr = [] for(let i = 0; i...原创 2019-01-15 15:08:10 · 14290 阅读 · 0 评论 -
JS深拷贝和浅拷贝
区别两者之间的区别:假设A复制了B,B发生了改变,A也跟着改变,就是浅拷贝,如果A没有变化,那就是深拷贝深拷贝 { let a = 10; let b = a; a = 9; console.log(a, b) }结果为:9 10这里b复制了a的值,a发生了改变,b还是原来a的值,这个就是深拷贝浅拷贝浅拷贝一般出...原创 2019-01-14 14:43:44 · 2721 阅读 · 0 评论 -
JS数组去重
简单数组去重: { const a = [1, 3, 4, 1, 5, 2, 6, 7, 8, 3] const b = a.filter((item, index, self) => self.indexOf(item) === index) console.log(b) //[1, 3, 4, 5, 2, 6, 7, 8] }实例1...原创 2019-01-17 18:05:40 · 427 阅读 · 0 评论 -
浅谈js中的闭包
对于一个个刚刚接触前端的新手,天天听人讲闭包,听的那个高大尚,心中对各位技术大佬是那个的膜拜,于是做为前端菜鸟的我,就去了解了传说中的闭包。何为闭包?通俗易懂的讲,就是可以调用函数内部的变量和方法举例说明如下: function test(){ var x = 1; var y = 2; function func1(){原创 2017-12-05 09:42:04 · 210 阅读 · 0 评论 -
关于地址栏url的一些小结
1.获取整个地址栏地址 //获取整个地址栏地址 var href = window.location.href; console.log(href);以上代码就是获取整个url地址2.获取url协议部分 //获取url协议部分 var protocol = window.location.protocol; console.log(protocol);如果ur原创 2017-12-05 09:40:48 · 839 阅读 · 0 评论 -
call和apply的区别和用法
call和apply的区别obj.call(thisObj, arg1, arg2, …); obj.apply(thisObj, [arg1, arg2, …]); call和apply作用都是把obj绑定到thisObj的作用,即改变this的指向,然而唯一的区别就是apply传递的参数必须得是数组的形式传递,而call则直接连续参数传递call和apply在什么地方可以用到呢?当一个对象需原创 2017-12-05 09:39:25 · 1299 阅读 · 0 评论 -
js中sort总结
数据排序这块应该是每个程序员都会遇到的,而这篇文章主要是介绍js中sort排序如何使用得当,既然有现成的封装的方法就用现成的,自己稍加修改就能完成,不需要再重新自己重头到尾写个函数,当然如果大家有这个兴趣也可以自己写啦。1.字母排序sort默认的排序方式为字母排序,根据二十六个字母依次排列,单词之间比较,则先比较第一个字母,如果第一个字母相同则比较第二个字母,以此类推。 // 1.字母排序(sor原创 2017-12-05 09:36:52 · 669 阅读 · 0 评论 -
js图片下载问题
我们都知道图片下载可以通过a标签下载,如下:&lt;a href=‘下载地址’ download&gt;下载&lt;/a&gt;用a标签下载如果是相对地址那没有问题,但是如果是绝对地址,在某些浏览器会有问题,没法下载图片,这里就要用到如下:function downloadImg(url, name) { // 将链接地址字符内容转变成blob地址 fetch(url, { mod...原创 2018-10-27 15:39:13 · 2133 阅读 · 1 评论 -
JS正则表达式入门
什么是正则表达式?正则表达式其实就是,在一个字符串序列中,按照你自己想要的匹配模式,将字符串搜索或替换的过程正则表达式结构/正则表达式主体/修饰符(可选)//实例如下:const patr = /china/i解析: /china/i 是一个正则表达式,其中china是一个正则表达式主体,i 是一个修饰符(搜索不区分大小写)使用正则表达式方法search方法检索字符串中指定的...原创 2018-12-14 17:04:05 · 397 阅读 · 0 评论 -
使用toFixed遇到的问题
在使用toFixed进行四舍五入的时候,我们有时候会遇到下面这种情况: let a = 1.595; let b = 1.5952 console.log(a.toFixed(2)); console.log(b.toFixed(2));输出结果:1.59 //a1.60 //b从这里可以看出,当你要保留两位小数的时候,如果目前只有三位小数,则数据不准确,如果目...原创 2018-12-25 09:48:39 · 2896 阅读 · 1 评论 -
JS中reduce方法
定义和用法reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。reduce() 可以作为一个高阶函数,用于函数的 composereduce() 对于空数组是不会执行回调函数的浏览器支持支持谷歌、火狐、ie9以上等主流浏览器语法array.reduce(function(prev, current, currentIndex, ar...原创 2019-01-17 17:22:34 · 13061 阅读 · 5 评论 -
浅谈js中的this
相信很多刚刚学习js的新手都会有同感,当看一段js代码时,发现里面有很多this,但是这些this到底是指向哪里却没有那么清楚,为了搞清楚这些this到底是什么情况,特地花点时间总结如下几点:1.最普遍的this表示全局对象 // 1.this表示全局对象 var x = 1 function test1(){ this.x = 2; console.原创 2017-12-05 09:49:20 · 180 阅读 · 0 评论