JS
文章平均质量分 76
灯火暗
Q229970025
展开
-
获取URL参数的几种方法(原生js / URLSearchParams / 正则)
原生js / URLSearchParams / 正则原创 2022-02-11 16:24:19 · 1902 阅读 · 0 评论 -
fabricjs使用笔记
fabricjs使用笔记安装及引用安装: npm install fabric引用: import { fabric } from 'fabric'声明画布<canvas id="canvas" width="600" height="600"></canvas>// mountedcanvasId = new fabric.Canvas('canvas')绘制图形Line Rect Circle Triangle Path Text Group Ima原创 2021-03-12 18:23:09 · 2978 阅读 · 5 评论 -
for与forEach的区别
元素修改const a = ['a', 'b', 'c', 'd', 'e']const b = ['a', 'b', 'c', 'd', 'e']a.forEach(item => { if (item === 'c') { item.name = 'CC' }})for (let i = 0; i < b.length; i++) { if (b[i] === 'c') { b[i] = 'CC' }}console.log(a, b)终止原创 2021-01-14 11:18:27 · 132 阅读 · 0 评论 -
文件下载的几种方法
onDownload (name) { const url = baseUrl() + 'mobileFile/download' const form = document.createElement('form') form.id = 'downloadform' form.style.display = 'none' form.target = '' form.method = 'post' form.acti...原创 2020-09-25 16:17:28 · 2655 阅读 · 0 评论 -
简化多重if else(判断时长)
闲来无事看到同事的代码有点冗余,就来改造一下~改造前:改造中: const obj = { 1: '1小时内结束', 18: '2小时内-18小时内结束', 24: '1天内结束', 120: '2天内-5天内结束', 168: '1周内结束', 672: '2周内-4周内结束', 720: '一个月内内结束', 7920: '2个月-11个月内结束', 8760: '一年内' } function formatCompare(原创 2020-12-15 18:53:23 · 604 阅读 · 0 评论 -
计算数组中重复元素的个数
function countTimes(arr) { return arr.reduce((obj, item) => { // console.log(obj, item, 88) if (item in obj) { obj[item]++; } else { obj[item] = 1; } return obj; }, {}); } var names = ['a', 'b', 'a', 'c', '原创 2020-11-05 13:38:23 · 719 阅读 · 0 评论 -
数组对象之根据特定字段去重
需求: 数组对象去重const arr = [ { id: 1, name: 'aa', age: 16 }, { id: 1, name: 'aa', age: 16 }, { id: 3, name: 'cc', age: 20 }, { id: 3, name: 'cc', age: 20 }, { id: 2, name: 'bb', age: 18 }, { id: 1, name: 'aa', age: 16 },]const newArr = arr.filt.原创 2020-09-05 09:24:51 · 1546 阅读 · 0 评论 -
原生js实现filter,map,reduce方法
js原生封装一个filter方法function myFilter(arr, callback) { if (!arr.length || !Array.isArray(arr) || typeof callback !== 'function') { return [] } else { const result = [] for (let i = 0; i < arr.length; i++) { const item = arr[i] i原创 2020-08-13 22:59:27 · 478 阅读 · 1 评论 -
Object.defineProperty方法的简单介绍
Object.defineProperty对象定义属性和赋值let Person = {}Person.name = 'cc'person['age'] = 18Object.defineProperty语法Object.defineProperty()的作用就是直接在一个对象上定义一个新属性,或者修改一个已经存在的属性语法: Object.defineProperty(需要定义属性的当前对象, 当前需要定义的属性名, 属性描述符)const user = {}Object.defi原创 2020-08-05 23:40:37 · 458 阅读 · 0 评论 -
正则表达式的简单使用
正则表达式的简单使用在线测试正则简介正则表达式:用于匹配规律规则的表达式,正则表达式最初是科学家对人类神经系统的工作原理的早期研究,现在在编程语言中有广泛的应用。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式的作用给定的字符串是否符合正则表达式的过滤逻辑(匹配)可以通过正则表达式,从字符串中获取我原创 2020-06-01 01:00:39 · 385 阅读 · 0 评论 -
将多个数组按索引排列成对象格式
将多个数组按索引排列成对象格式emmm… 我也不知道这叫个啥需求就是将这样生成这样 function repeat (arr, index, obj, title) { arr.forEach((item, i) => { if (i === index) { obj[title] = item } ...原创 2019-12-13 19:35:07 · 243 阅读 · 0 评论 -
jquery
jq 的入口函数# jq 的入口函数 $(function(){})# 原生js 的入口函数 window.onload = function(){} # 多个window.onload 存在覆盖 始终最后一个会生效# jq 中的$(function(){}) 多个不会覆盖 会依次触发每个入口函数里面的代码 # $(function(){}) 的执行速度要比...原创 2019-05-14 12:18:18 · 227 阅读 · 0 评论 -
call,apply和bind的用法及区别
git使用说明如何生成SSH公钥1. 安装git双击 Git-2.21.0-64-bit.exe 一路回车即可安装2. 公钥生成桌面右键打开Git Bash Here, 使用如下命令生成公钥, 一路回车即可.ssh-keygen显示如下Generating public/private rsa key pair.Enter file in which to save the k...原创 2019-04-09 18:16:44 · 2760 阅读 · 0 评论 -
new和this
1. new关键字构造函数 ,是一种特殊的函数。主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。构造函数用于创建一类对象,首字母要大写。构造函数要和new一起使用才有意义。new在执行时会做四件事情new会在内存中创建一个新的空对象new 会让this指向这个新的对象执行构造函数 目的:给这个新对象加属性和方法new会...原创 2019-05-14 10:52:00 · 560 阅读 · 0 评论 -
数组的常用方法
Array对象创建数组对象的两种方式字面量方式new Array()// 1. 使用构造函数创建数组对象// 创建了一个空数组var arr = new Array();// 创建了一个数组,里面存放了3个字符串var arr = new Array('zs', 'ls', 'ww');// 创建了一个数组,里面存放了4个数字var arr = new Array(1...原创 2019-05-14 11:08:21 · 384 阅读 · 0 评论 -
String对象
String对象字符串的不可变var str = 'abc';str = 'hello';// 当重新给str赋值的时候,常量'abc'不会被修改,依然在内存中// 重新给字符串赋值,会重新在内存中开辟空间,这个特点就是字符串的不可变// 由于字符串的不可变,在大量拼接字符串的时候会有效率问题创建字符串对象var str = new String('Hello World...原创 2019-05-14 12:06:59 · 135 阅读 · 0 评论 -
js高级
学习目标:理解面向对象开发思想掌握 JavaScript 面向对象开发相关模式掌握在 JavaScript 中使用正则表达式typora-copy-images-to mediaJavaScript 高级目标理解面向对象开发思想掌握 JavaScript 面向对象开发相关模式掌握在 JavaScript 中使用正则表达式案例演示贪吃蛇回顾由于 Java...原创 2019-05-14 12:19:12 · 1097 阅读 · 1 评论 -
全选和反选
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>全选反选</title> <style> * { padding: 0; margin:...原创 2019-05-08 09:07:38 · 959 阅读 · 0 评论 -
格式化时间
Vue中使用 Moment.jsjavaScript日期处理类库:Moment.js安装npm i moment导入: import moment from 'moment'在main中定义全局的过滤器 //Moment.js import moment from 'moment' //定义全局的过滤器 Vue.filter('da...原创 2019-05-24 15:21:57 · 190 阅读 · 0 评论 -
Object.keys用法
Object.keys() 方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for…in 循环遍历该对象时返回的顺序一致 。如果对象的键-值都不可枚举,那么将返回由键组成的数组var arr = ['cc', 'zz', 'ss'];console.log(Object.keys(arr)); // ['0', '1', '2']var obj =...原创 2019-07-24 09:55:16 · 84 阅读 · 0 评论 -
轮播图制作思路 (全)
原生1. index.html图片 ul>li点标记 ul>li<div class="jd_layout"> <!--轮播图--> <div class="jd_banner"> <!--图片--> <ul class="jd_bannerImg clearfix">...原创 2019-04-17 12:14:58 · 4588 阅读 · 0 评论