
js
散修灬
明明可以靠颜值,非要靠才华。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
js根据base64下载文件
js根据base64、二进制流下载文件原创 2023-03-02 10:45:28 · 4589 阅读 · 0 评论 -
js实现瀑布流布局
js实现动态瀑布流布局,可根据窗口大小变动实时跳转瀑布流显示列数原创 2022-12-07 12:51:46 · 343 阅读 · 0 评论 -
IntersectionObserver实现页面滚动时候监听指定元素进入,滚动出页面可视区域事件
IntersectionObserver监听指定元素的滚动到页面可视区域原创 2022-05-16 18:10:59 · 865 阅读 · 0 评论 -
封装ajax(promise封装)
function ajax(options) { const xhr = window.XMLHttpRequest ? new XMLHttpRequest : new ActiveXObject; const method = options.method.toLocaleLowerCase() || 'get'; const url = options.url + '...原创 2020-03-30 14:24:15 · 236 阅读 · 0 评论 -
instanceof 原理
// **右边变量原型存在于左边变量的原型链上**function instanceon(left, right) { let leftValue = left._proto_; let rightValue = right.prototype; while (true) { if (leftValue === null) { re...原创 2020-03-30 14:23:01 · 185 阅读 · 0 评论 -
js数组去重
这里只介绍3中数组去重,当然数组去重并不是只有这3中方法,目前我知道的是有一位大神写出了16种方法// ! 数组去重// 1. es6 的setlet array1 = [1,2,2,3,44,44,5,false,false,true,true,null,undefined,null,NaN];let array2 = [];array2 = [...new Set(array1)]...原创 2020-03-29 17:31:03 · 149 阅读 · 0 评论 -
js实现一个vue的双向绑定
直奔主题,看代码// ! 实现一个双向绑定/** * Object.defineProperty(obj, prop, descriptor) * {obj} 要定义属性的对象。 * {prop} 要定义或修改的属性的名称或 Symbol 。 * {descriptor} 要定义或修改的属性描述符。 */let obj = { text: 0};let input = ...原创 2020-03-29 16:25:15 · 185 阅读 · 0 评论 -
节流函数,防抖函数
直奔主题,看代码// !节流函数// 在规定时间内只触发一次function throttle(fn, wait) { let prevDate = Date.now(); return function () { let _this = this; let arg = arguments; let nowDate = Date...原创 2020-03-29 16:22:57 · 137 阅读 · 0 评论 -
js浅拷贝和深拷贝的实现
浅拷贝// 1. ...实现let copy1 = {...{x: 1}};// 2. Object.assign实现let copy2 = Object.assign({}, { x: 1});深拷贝// 1. JOSN.stringify()/JSON.parse() // 缺点:拷贝对象包含 正则表达式,函数,或者undefined等值会失败let obj = ...原创 2020-03-29 16:20:53 · 187 阅读 · 0 评论 -
混合开发中,H5页面与原生app交互(方法互相调用与传参)
H5与原生app交互,需要WebViewJavascriptBridge,废话不多直接上代码,下面是项目中的封装bridge.js的全部代码(示例代码为vue)//iOS 交互声明function connectWebViewJavascriptBridgeIOS(callback) { if (window.WebViewJavascriptBridge) { return ca...原创 2019-11-30 17:52:26 · 12017 阅读 · 0 评论 -
js事件委托
废话不多直接上代码<ul id="ulCont"> <li>111</li> <li>222</li> <li>333</li> <li>444</li></ul>window.onload = function () { var ele...原创 2019-11-21 18:13:42 · 133 阅读 · 0 评论 -
null,undefined," "的区别, typeof null 和 typeof undefined
此文章只是为了自己方便记忆写的随笔都知道 JavaScript 数据类型有:字符串值(string),数值(number),布尔值(boolean),数组(arry),对象(object)。Null在 JavaScript 中,null 是 “nothing”。它被看做不存在的事物。不幸的是,在 JavaScript 中,null 的数据类型是对象。您可以把 null 在 JavaS...原创 2019-11-21 16:14:24 · 929 阅读 · 0 评论 -
promise,settimeout,async执行顺序笔记式理解
前言:为什么要写这篇文章?很简单,面试被虐了!对就是这么简单。为了挽回颜面,事后马上恶补了一下这方面的知识。俗话说(真理):好记性不如烂笔头,怕忘记就写了这篇文章,同时也是为了完成自己前几天立的flag,一个月写一篇文章,下面正式进入正题当时面试题具体啥样子忘记了,从网上找到了类似的面试题,好像是头条的面试题 async function async1() { console.log(...原创 2019-11-20 18:59:34 · 316 阅读 · 0 评论 -
JavaScript监听对象属性的改变
传送门转载 2019-04-09 13:56:36 · 922 阅读 · 0 评论 -
数组去重的多种方法
数组去重的方法有很多,废话不多说下面只写3种,分别是从复杂到简单:1.利用forEach进行轮询需要去重的数组,然后通过判断新数组(这个新数组需要在轮询之前创建一个空数组)中是否包含进行添加不重复的每一项得到新数组此方法的缺点需要新建一个数组需要进行轮询,性能方面不是很好,代码不简练function removeDup(arry) { let nomalAyy = []; ...原创 2019-04-08 18:31:57 · 354 阅读 · 0 评论 -
prototype、__proto__与constructor
传送门转载 2019-03-19 10:11:18 · 122 阅读 · 0 评论 -
前端js性能优化方案
原文链接:http://www.cnblogs.com/xxcanghai/p/5205998.html链接:http://www.zhihu.com/question/21658448/answer/18903129前端优化的途径有很多,按粒度大致可以分为两类,第一类是页面级别的优化,例如 HTTP请求数、脚本的无阻塞加载、内联脚本的位置优化等 ;第二类则是代码级别的优化,例如 Java...转载 2019-03-03 13:53:28 · 641 阅读 · 0 评论