js
m0_49471668
这个作者很懒,什么都没留下…
展开
-
正则表达式中 空格问题
1原创 2024-03-18 10:13:25 · 132 阅读 · 0 评论 -
将一个对象和合并到数组中
props合并到chooseTag中。原创 2022-09-08 23:13:13 · 114 阅读 · 0 评论 -
JS中对象数组用sort按属性排序
其实在我们实际开发中,经常会遇到这样的问题,我们收到后端传过来的数据,然后我们需要根据数据中的某一项来排序。1.按对象value排序。2.按对象name排序。原创 2022-08-02 14:06:33 · 666 阅读 · 0 评论 -
数组的扩展
扩展运算符(spread)是三个点()。它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列。该运算符主要用于函数调用。上面代码中,和这两行,都是函数的调用,它们都使用了扩展运算符。该运算符将一个数组,变为参数序列。扩展运算符与正常的函数参数可以结合使用,非常灵活。扩展运算符后面还可以放置表达式。如果扩展运算符后面是一个空数组,则不产生任何效果。注意,只有函数调用时,扩展运算符才可以放在圆括号中,否则会报错。上面三种情况,扩展运算符都放在圆括号里面,但是前两原创 2022-07-12 21:05:15 · 167 阅读 · 0 评论 -
7.9-7.17学习计划 ES6新特性及语法
ES6 新增了命令,用来声明变量。它的用法类似于,但是所声明的变量,只在命令所在的代码块内有效。上面代码在代码块之中,分别用和声明了两个变量。然后在代码块之外调用这两个变量,结果声明的变量报错,声明的变量返回了正确的值。这表明,声明的变量只在它所在的代码块有效。循环的计数器,就很合适使用命令。上面代码中,计数器只在循环体内有效,在循环体外引用就会报错。下面的代码如果使用,最后输出的是。上面代码中,变量是命令声明的,在全局范围内都有效,所以全局只有一个变量。每一次循环,变量的值都会发生改变,原创 2022-07-11 19:57:32 · 264 阅读 · 0 评论 -
css 过渡效果 transition属性 用法及详解 带例子效果图
让元素样式慢慢变化,常配合hover使用,增强网页交互体验。⑴all:过渡所有能过渡的属性。⑵具体属性名,例子详见下实现效果:鼠标放到div盒子上后,盒子的width和background-color改变 由效果图可知,将鼠标移入和移出时均有过渡效果。但是如果将 transition:width 1s ,background-color 2s; 这一句代码加到hover选择器中,那么鼠标移入时有过渡效果,移出时没有。注意&总结:1.想让哪个属性改变就给谁加transition;2.transiti原创 2022-06-26 18:26:49 · 426 阅读 · 0 评论 -
8080端口占用
netstat -ano找到8080端口对应的pidtaskkill /f /t /im 16132杀掉这个pid就好了原创 2022-06-20 09:36:57 · 51 阅读 · 0 评论 -
if else优化
原代码优化后:原创 2022-06-17 22:36:51 · 65 阅读 · 0 评论 -
module.exports与exports,export与export default之间的关系和区别
首先我们要明白一个前提,CommonJS模块规范和ES6模块规范完全是两种不同的概念。Node应用由模块组成,采用CommonJS模块规范。根据这个规范,每个文件就是一个模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见。CommonJS规范规定,每个模块内部,module变量代表当前模块。这个变量是一个对象,它的exports属性(即module.exports)是对外的接口。加载某个模块,其实是加载该模块的module.exports属性。上面代码通过modul原创 2022-06-17 20:59:20 · 190 阅读 · 0 评论 -
v-model原理
问到v-model就是问的双向数据绑定原创 2022-04-15 22:30:21 · 84 阅读 · 0 评论 -
链接放上参数,在页面访问
// 给url传参数function getQueryVariable(variable) { var query = window.location.search.substring(1); var vars = query.split("&"); for (var i = 0; i < vars.length; i++) { var pair = vars[i].split("="); if (pair[0] == variable) {.原创 2022-04-15 16:39:45 · 121 阅读 · 0 评论 -
树的宽度可调
index.js<template> <div class="box" :style="{height:screenHeight - 110 + 'px'}" > <el-row> <el-col :span="scale" :style="{height:screenHeight - 110 + 'px'}" class="left" > ..原创 2022-04-15 16:23:40 · 1264 阅读 · 0 评论 -
http封装
目录api.jsindex.jsaxios.jsapi.jsexport default { login: '/iot/login', //注册 reg: '/iot/reg', // 退出 logout: '/iot/logout', // 修改用户 edituser: '/iot/edituser', // 修改密码 changepwd: '/iot/changepwd', // 获取用户信息 currentuser: '/iot/c原创 2022-04-15 14:40:28 · 467 阅读 · 0 评论 -
ztree 展开一级节点 | ztree只显示到二级目录
// 默认展开一级节点var nodes = tree.getNodesByParam("level", 0);for (var i = 0; i < nodes.length; i++) { tree.expandNode(nodes[i], true, false, false);}//ztree只显示到二级目录var nodes2 = tree.getNodesByParam("level", 1);for (var j = 0; j < nodes2.length;.原创 2022-04-14 19:44:27 · 794 阅读 · 0 评论 -
Promise resolve封装
resolve函数封装1.resolve是Promise函数上的方法,不是Promise实例对象的方法2.resolve返回的结果为一个Promise对象3.判断Promise对象下的状态:是Promise,状态由该Promise决定,是Promise,就调用then方法,成功走第一个回调,失败走第二个回调;undefined或者值,状态为成功,调用resolve就可以//添加resolve方法Promise.resolve = function (value) {// 返回结果为P原创 2022-03-30 21:53:36 · 971 阅读 · 0 评论 -
Unity学习
常用:场景编辑窗口Scene游戏运行窗口Game:玩家会看到的画面场景物体列表窗口HierachyProject项目资源列表串口详情查看窗口快捷键:Hierarchy板块:场景资源管理。一个资源可以由很多个场景,这里存放着当前Scene中的资源。Project板块:工程资源文件管理。整个工程中所有的资源都放在这个文件夹中,对应于工程中的assets文件夹。在资源文件中,最好不要用中文命名。这里存放着很多场景,和多个模型素材,如正方体模型。Secn.原创 2022-03-29 20:24:50 · 3319 阅读 · 1 评论 -
Promise
promise最大的好处解决地狱回调问题Promise是es6引入的进行异步编程的新解决方案Promise是一个构造函数,可以进行对象的实例化Promise可以用来封装一个异步操作,并且可以获取其成功或者失败的结果值异步编程fs文件操作(fs是nodejs下的一个模块,可以对计算机磁盘进行读写操作)以前:(err,data)=>{}使用的是回调require('fs').readfile('./index.html',(err,data)=>{})数据库原创 2022-03-23 22:56:18 · 759 阅读 · 0 评论 -
判断字符串是否为回文字符串
问题:编写一个函数isPlindromicStr(),如果是回文返回true,否则返回false回文字符串:关于中心做对称的字符串 ;例如:abcdeffedcba adcdefedcba//将字符串从前往后,以及从后往前逐个进行比较,如果比较到中间位置,字符都是一样的就是回文字符串function isPalindromiStr(str) { //如果是空,是回文 if (!str.length) return true //把字符串转化成小写的 toLowerCase()原创 2022-03-22 23:47:10 · 806 阅读 · 0 评论 -
圣杯布局和双飞翼布局
一般用于PC端的网页布局目的:1.两侧内容宽度固定,中间宽度自适应2.三栏布局,中间内容最先加载,渲染出来使用方法:float和marginmargin给负值的意思是宽度缩减多少注意点:1.footer清除浮动 2.margin负值的使用 3.posotion:relative的使用<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <t.原创 2022-03-22 22:32:58 · 112 阅读 · 0 评论 -
使用class实现继承 原型 原型链
使用class实现继承类的演示// 使用class实现继承// 定义一个Student类,在Student里面定义一个构造函数,接受name和scoreclass Student { constructor(name,score){ // 这里的this是 通过student这个类 创建出来的实例 this.name=name; this.score=score; }}const student = new Stud原创 2022-03-22 16:56:49 · 321 阅读 · 0 评论 -
虚拟DOM和diff算法
虚拟DOM用JavaScript对象描述DOM的层次结构,DOM中的一切属性都在虚拟DOM中有对应的属性diff :diff是发生在虚拟DOM上的精细化比对,最小量更新snabbdom:是著名的虚拟DOM库,是diff算法的鼻祖,vue源码借鉴了snabbdomnpm i -S snabbdomsnabbom库是DOM库,不能再node.js环境运行,需要搭建webpack和webpack-dev-server,不需要安装任何loader必须安装webpack@5,因为we原创 2022-03-21 18:17:17 · 967 阅读 · 0 评论 -
获取对象的全部属性值Object.values
const deps = { 采购部: [1, 2, 3], 人事部: [5, 8, 12], 行政部: [5, 14, 79], 运输部: [3, 64, 105], }; let member = Object.values(deps); console.log(member);扁平化处理let member = Object.values(deps).flat(Infinity);..原创 2022-03-21 14:42:32 · 556 阅读 · 0 评论 -
使用const报错Error: “i“ is read-only ?
换成let不报错了,原创 2022-03-21 12:02:23 · 1043 阅读 · 0 评论 -
vue-cil时间过滤器filter全局引入
1.新建filters文件夹,在文件夹新建index.jsexport function DateformaDate(value) { //创建一个时间日期对象 var padaDate = function (value) { return value < 10 ? "0" + value : value; }; var date = new Date(); var year = date.getFullYear(); //存储年 v原创 2022-03-17 17:15:14 · 167 阅读 · 0 评论 -
vue.js 获取当前时间
html代码 <div class="item-right"> {{ date | formaDate }} </div>js 代码 <script>var padaDate = function(value) { return value < 10 ? "0" + value : value;};export default { data() { return { .原创 2022-03-17 16:45:39 · 492 阅读 · 0 评论 -
变量声明提升和函数声明提升
目录变量声明提前函数声明提升函数的两种创建方式变量声明提前JavaScript的函数作用是指在函数内声明的所有变量在函数体内始终是有定义的,也就是说变量在声明之前已经可用,所有这特性称为声明提前(hoisting),即JavaScript函数里的所有声明(只是声明,但不涉及赋值)都被提前到函数体的顶部,而变量赋值操作留在原来的位置。如下面例子:注释:声明提前是在JavaScript引擎的预编译时进行,是在代码开始运行之前。var scope = 'global';f.原创 2022-03-16 11:46:59 · 159 阅读 · 0 评论 -
JS作用域
目录js作用域js局部作用域JavaScript 全局变量JavaScript 变量生命周期函数参数作用域是可访问的变量的集合。对象和函数也是变量。js作用域js作用域:可访问变量,对象,函数的集合js函数作用域:作用域在函数内修改js局部作用域变量在函数内声明,变量为局部作用域局部变量:只能在函数内部访问//此处不能调用carName变量function myFuncton(){ var carName = "Volvo"; //函数内部原创 2022-03-16 11:18:03 · 52 阅读 · 0 评论 -
宏任务微任务
宏任务:setTimeoutsetIntervalDom事件AjAx请求,后于Dom渲染微任务:Promise,async/await 先于Dom渲染function macromicroTask(){ console.log('start') setTimeout(()=>{ console.log('setTimeout') },20) new Promise ((resolve)=...原创 2022-03-15 18:08:19 · 221 阅读 · 0 评论 -
前端实现下载文件
使用a标签<a style="color:white" href="../../../TemplateNode.xlsx" download target="_blank"> 下载模板 </a>遇到得问题:显示失败,未发现文件解决方法:需要下载的文件放在跟src同级的目录下或者放在publice目录里面,反正就是跟 favicon.ico、index.html 这两个文件同级就好了...原创 2022-03-14 20:09:26 · 1308 阅读 · 0 评论 -
数组扁平化 去重 升序
目录扁平化三种方式1.flat函数2.reduce方式+递归调用3.数组转成字符串,字符串再转成数组去重升序扁平化三种方式1.flat函数参数为深度 Infinity是代表深度的属性let arr = [1, 2, [3, [4, [5, 6]]]]console.log(arr.flat(Infinity), "方式1")//[1, 2, 3, 4, 5, 6]2.reduce方式+递归调用res和item是reduce函数的参数 f原创 2022-03-13 22:42:49 · 966 阅读 · 0 评论 -
vue文件上传
util/upload.jsimport axios from 'axios';import api from "@/http/api";import { Message } from 'element-ui';export const uploadFile = (file) => { let formData = new FormData(); formData.append('file', file); return axios({ url: process.en原创 2022-03-12 21:16:43 · 1476 阅读 · 0 评论 -
防抖节流理解与应用场景
在开发中,常常会去监听滚动事件或者用户输入框验证事件,如果事件处理没有频率限制,会加重浏览器的负担,影响用户体验感。因此可以采取防抖(debounce)和节流(throttle)来处理,减少调用事件的频率,达到较好的用户体验。防抖(debounce):一:html中在事件触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时,重新触发定时器<body> <div class="box" id="container"> <p>原创 2022-03-12 18:23:33 · 2563 阅读 · 0 评论 -
for循环中的setTimeout()
for(var i = 0;i<3;i++){ setTimeout(function(){ console.log(i) },1000) };打印结果:三个3原因分析:setTimeout()是一个异步处理函数,它会等待所有的主线程任务处理完,才开始执行自己的内部的任务,每隔1s往任务队列中添加一个任务【闭包函数,setTimeout()中的函数,现在还没执行】,当主线程执行完时,这时i=3,for循环括号内的就是主线程,执行完时i是3,所以会.原创 2022-03-09 14:58:39 · 1248 阅读 · 0 评论 -
console.log([‘1‘,‘2‘,‘3‘].map(parseInt));
答案:[1,NaN,NaN];首先是map方法的定义map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。map() 方法按照原始数组元素顺序依次处理元素。注意: map() 不会对空数组进行检测。注意: map() 不会改变原始数组。语法array.map(function(currentValue,index,arr), thisValue)原因: 其实就是 map的callback的第二个参数 index 也就是当前元素的索引 被当做p原创 2022-03-09 14:34:56 · 305 阅读 · 0 评论 -
使用iframe页面父子传参数
son.html<button onclick="handleEvent()">向父页面发送信息</button><p>子页面</p><script> // 注册消息事件监听,接受子元素给的数据 window.addEventListener('message', (e) => { console.log(e) console.log(e.data); }, false);原创 2022-03-01 10:42:29 · 650 阅读 · 0 评论 -
html文件可用本地IP访问
1、cmd全局安装npm install http-server -g2、查询本机电脑IPhttp-server -c-13、访问html文件目录位置(手机/他人电脑都可访问)电脑IP+文件位置原创 2022-02-28 18:29:52 · 1960 阅读 · 1 评论 -
javaScript原型与原型链
prototype:此属性只有构造函数才有,它指向的是当前构造函数的原型对象。 __proto__:此属性是任何对象在创建时都会有的一个属性,它指向了产生当前对象的构造函数的原型对象,由于并非标准规定属性,不要随便去更改这个属性的值,以免破坏原型链,但是可以借助这个属性来学习,所谓的原型链就是由__proto__连接而成的链。 constructor:此属性只有原型对象才有,它默认指回prototype属性所在的构造函数。 原型的几个要点:1、所有的引用类型(数组、对象、函..原创 2022-02-17 17:01:06 · 105 阅读 · 0 评论 -
JS算术运算
JS中的算术运算复杂运算通过作为Math对象的属性定义的函数和常量实现Math.pow(2,53) 表示2的53次幂Math.round(0.6) =>1.0表示四舍五入Math.ceil(0.6)=>1.0 表示向上取整Math.floor(0.6 =>0.0 表示向下取整...原创 2022-01-19 16:12:06 · 559 阅读 · 0 评论 -
sessionStorage,localStorage以及cookies区别
一.localStorage1.用法localStorage.setItem:存储数据,接收两个参数。一个是key,一个是valuelocalStorage.getItem:获取数据,接收1个参数,参数为key,可以获取valuelocalStorage.removeItem:移除指定数据,接收1个参数,参数为key,移除相应的valuelocalStorage.clear:移除所有数据,无参数localStorage.key:获取指定下标的数据,接收1个参数,参数为下标值lo原创 2022-01-18 16:39:14 · 142 阅读 · 0 评论 -
axios get 传参数 数组
this.$axios.get('/getUserByName',{ params:{ names:['qwe','asd'] + '', }}).then(res=>{ console.log(res)})原文链接:https://blog.csdn.net/Cribug8080/article/details/88343758/原创 2021-10-09 19:46:47 · 196 阅读 · 0 评论