js
阿姐y
阿姐我又回来咧!
展开
-
object.defineProperty函数详解
object.defineProperty函数详解原创 2022-08-22 14:52:28 · 318 阅读 · 1 评论 -
reduce函数详解
javascript - reduce函数详解原创 2022-08-18 14:55:16 · 4654 阅读 · 0 评论 -
如何修改原生radio的样式
废话不多说直接上代码: <label class="radio"> <input v-model="userInfoTemp.gender" type="radio" name="sex" value="2" /><i :class="[userInfoTemp.gender == 2 ? 'active' :原创 2022-02-24 15:01:26 · 642 阅读 · 0 评论 -
为何会产生1px像素问题。你了解过其原理吗?
问题描述:1px像素问题指的是在代码中写了1px,但是在某些手机的屏幕上就会看到的很粗。在探究该问题之前,我们需要了解几个概念:1、平时说的屏幕分辨率 xxx * xxxx,指的是屏幕的物理分辨率,简单来说就是屏幕上有多少个像素点。同样尺寸的屏幕,分辨率越高,图像展示的也就越清晰。2、设备独立像素:我们日常代码写的px,在设备缩放比例为100%的情况下,1px等于1个设备独立像素。在我们打开谷歌浏览器的手机模拟器的时候,看到的那些尺寸就是设备的独立像素。3、设备像素比:设备的物理像素/设备的独立像素原创 2021-12-02 10:58:06 · 1080 阅读 · 0 评论 -
ES6应该用到项目中的知识点
1、用let代替var, 防止变量提升,可以产生块级作用域,保证作用域安全。 声明常量最好用const声明。if (true) { console.log(x); // ReferenceError let x = 'hello';}// 用let声明,会报错,因为let声明的变量在声明前不可以调用。但是var没有这个限制,由于js的运行机制x会输出为undefined.所以产生了变量提升。2、使用字符串模版// badconst a = "foobar";const b = 'f原创 2021-11-29 15:51:27 · 99 阅读 · 0 评论 -
proxy简单实现观察者模式
观察订阅者模式实例const person = observable({ name: '张三', age: 20});function print() { console.log(`${person.name}, ${person.age}`)}observe(print);person.name = '李四';// 输出// 李四, 20```我们执行代码后发现,当给person对象赋值的时候会触发print函数。observe相当于声明一个观察者。当其里面内容改变的原创 2021-11-22 18:03:00 · 401 阅读 · 0 评论 -
JS的节流和防抖详解
JS的节流和防抖函数防抖(debounce)基本概念:在时间被触发n秒在执行回调,如果在这n秒内又被触发,则重新开始计时。未加防抖函数的例子function inputChange(content) { console.log("inputContent" + content); } let input = document.getElementById("unDebounce");input.addEventListener("keyup", function (e) {原创 2021-10-22 14:48:05 · 154 阅读 · 0 评论 -
你不知道的js构造函数
1. 创建对象的两种方式// 第一种方式var obj = { name:'sf'}// 第二种方式 通过构造函数function Obj(name){ this.name = name;}var obj = new Obj('sf');// 当我们new一个对象它发生了什么操作,以及构造函数中return的问题 // 第一步 首先创建一个空对象 var newobj = {}; // 第二步 把newobj实例对象的_proto__属性指向构造函数的proto原创 2021-06-30 09:45:06 · 104 阅读 · 0 评论 -
手把手教你封装一个 数字框组件
父组件: <input-number v-model="number" :min="min" :max="max"></input-number>子组件<template> <div> <input :value="currentnumber" @change="handleChange" /> <button v-on:keyup.up="handleUp" @click="hand原创 2021-04-19 09:12:30 · 180 阅读 · 4 评论 -
js数组find方法详解
find方法基础参数说明: arrary.find(function(item,index,arr),thisvalue);array:数组。 item:当前循环的项。 index:循环项的下标 。 arr:当前循环的数组。 thisvalue:如果传的话,在callbck函数中this为该值,不穿的话this为undefined。**方法特性: **会返回数组中符合条件的第一个值,在数组中找到的话则不会往下执行。 如果数组中没有符合条件的值则返回undefined **在find方法执原创 2021-04-13 10:50:34 · 31874 阅读 · 0 评论 -
在iframe下存储不上cookie,nginx配置iframe和主窗体同源
在非同源的iframe存储不上cookie需求描述: 公司的系统A需要嵌入公司系统B的页面。 系统A为C#程序,启动在IIS。在系统A中一个页面通过iframe嵌入系统B的页面,系统B是shiro的安全框架,前后端接口身份验证通过后端在response设置cookie存储上Jsessionid。 在谷歌浏览器中存在保护机制,当不同源的页面时无法在子页面存储cookie。导致在嵌套页面无法正常访问接口。解决方法: 在请求头加入p3p(可自行百度)没有成功。 最后通过测试发现如果是同源的界面则可以存原创 2021-04-08 11:28:50 · 3704 阅读 · 1 评论 -
前端如何实现多文件下载以及单文件下载
前端如何实现多文件下载以及单文件下载**单文件下载** let aLink = document.createElement('a') // 创建a标签 aLink.href = this.downloadurl; // 设置下载地址 aLink.download = this.downloadname;// 设置下载文件名 document.body.appendChild(aLink); aLink.click(); document.body.removeChild(aLink);原创 2021-04-08 11:10:06 · 458 阅读 · 0 评论