腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
圈层
工具
返回腾讯云官网
前端开发随记
专栏成员
举报
84
文章
129135
阅读量
10
订阅数
订阅专栏
申请加入专栏
全部文章(84)
编程算法(12)
函数(8)
javascript(7)
官方文档(6)
存储(5)
对象(5)
微信小程序(5)
vue.js(4)
事件(4)
html(3)
api(3)
小程序(3)
view(3)
css(2)
git(2)
webpack(2)
容器(2)
数据结构(2)
验证码(2)
data(2)
dom(2)
render(2)
space(2)
url(2)
解决方案(2)
生命周期(2)
数据(2)
网络(2)
原型(2)
java(1)
react(1)
jquery(1)
json(1)
webview(1)
打包(1)
unix(1)
网站(1)
渲染(1)
http(1)
redux(1)
babel.js(1)
lodash(1)
缓存(1)
网络安全(1)
html5(1)
npm(1)
socket编程(1)
mqtt(1)
事件总线(1)
antd(1)
app(1)
apply(1)
axios(1)
bind(1)
center(1)
children(1)
cookie(1)
element(1)
export(1)
import(1)
line(1)
object(1)
pic(1)
plugin(1)
promise(1)
rest(1)
scale(1)
scope(1)
script(1)
scrolltop(1)
search(1)
set(1)
setstate(1)
settimeout(1)
socket(1)
state(1)
target(1)
text(1)
token(1)
toolbar(1)
video(1)
vuex(1)
web(1)
遍历(1)
表单(1)
布局(1)
测试(1)
插件(1)
代理(1)
队列(1)
二进制(1)
工作(1)
管理(1)
基础(1)
集合(1)
兼容性(1)
接口(1)
客户端(1)
模块化(1)
数组(1)
搜索(1)
调试(1)
通信(1)
系统(1)
硬件(1)
作用域(1)
搜索文章
搜索
搜索
关闭
JS对象到原始值的转换
编程算法
java
数据结构
JS对象到原始值转换的复杂性 主要由于某些对象类型存在不止一种原始值的表示 对象到原始值转换的三种基本算法 在解释三种算法前需要了解toString valueOf这两个方法 toString 返回对象的字符串表示 Array类的toString方法会将每个元素转换为字符串,再使用逗号作为分隔符拼接起来 Function类的toString方法将定义的函数转换为JS源代码的字符串 Date类型的toString方法返回一个人类友好(且JS可解析)的日期和时间字符串 RegExp类定义的toStrin
peng_tianyu
2023-02-13
4.3K
0
图片懒加载之判断图片进入可视区域
dom
element
scrolltop
Dom结构 <div style="background-color: blue;width:100vw;height:5000px"></div> <div id="img" style="background-color: blueviolet;width:100vw;height:500px"></div> 使用 clientHeight scrollTop offsetTop 判断 document.addEventListener('scroll', () => { // 屏幕可视区域的高度
peng_tianyu
2022-12-24
831
0
使用URLSearchParams类获取地址栏参数
url
对象
解析地址栏的参数并返回一个参数对象 function getUrlParams() { const searchParams = new URLSearchParams(window.location.search); const params = {}; for(const [key, value] of searchParams) { params[key] = value; } return params; } Usage const params = getUrlParams() 参
peng_tianyu
2022-12-23
1K
0
从0到1 Webpack搭建Vue3开发、生产环境
webpack
javascript
css
vue.js
html
起步 创建项目目录 mkdir webpack-vue3-demo 初始化 package.json npm init -y 参考文档 安装 webpack webpack-cli webpack-dev-server webpack-merge npm install webpack webpack-cli webpack-dev-server webpack-merge --save-dev 创建配置文件 mkdir build cd build touch webpack.b
peng_tianyu
2022-12-15
1.1K
0
简易版websocket封装及本地启动socket服务
socket编程
使用node启动本地socket服务 创建项目目录 mkdir server 初始化 npm npm init -y 安装依赖库 npm i nodejs-websocket -S 创建服务文件 const ws = require('nodejs-websocket'); const server = ws.createServer(connect => { connect.on("text", data => { console.log("received: "+data); connect
peng_tianyu
2022-12-15
1.3K
0
HTML5离线存储原理
缓存
存储
html5
html
网络安全
使用HTML5,通过创建cache manifest文件,可轻松创建web应用的离线版本;HTML5引入了应用程序缓存,这意味着web应用可进行缓存,并可在没有网络时进行访问。
peng_tianyu
2022-12-15
2.9K
0
JS实现全屏模式
api
代码实现 <template> <button @click="handleClick">切换全屏模式</button> </template> const handleClick = () => { if(document.fullscreenElement) { document.exixFullscreen() } else { document.documentElement.requestFullscreen() } } 事件监听 // 方式1 document.onfulls
peng_tianyu
2022-12-15
4K
0
使用事件总线(eventbus)或自定义事件的问题
事件总线
事件总线、自定义事件关键点 先监听事件再触发事件 考虑组件生命周期顺序 组件通信 <!-- 组件A --> <template> <div> <button @click="jump">跳转B</button> {{msg}} </div> </template> <!-- 组件B --> <template> <div> <button @click="back">返回</button> </div> </template> // A jump () { t
peng_tianyu
2022-12-15
617
0
react hook开发遇到的一些问题
antd
render
setstate
settimeout
问题一 使用 useState改变值后 拿到的值不是最新值 const [isFocus, setIsFocus] = useState<boolean>(false) const changeFocus = () => { setIsFocus(!isFocus) } useEffect(() => { console.log(isFocus) // do something }, [isFocus]) 因为setState是异步的 所以调用setState之后无法立刻拿到最新的值 使
peng_tianyu
2022-12-15
387
0
electron中使用webview
webview
使用webview标签 <webview src="https://www.baidu.com" preload="./preload.js"></webview> 向webview注入JS // preload.js const { contextBridge } = require('electron') contextBridge.exposeInMainWorld('apiKey', { fn: () => {} }) // 在webview页面使用 window.apikey.fn()
peng_tianyu
2022-12-15
1.2K
0
JS浅拷贝
javascript
浅拷贝 浅拷贝创建一个新对象,这个对象仅对原对象的属性进行拷贝,属性值是基本类型时,拷贝的是原数据,属性值是引用类型时,拷贝的是指针 实现浅拷贝的几种方法 Object.assign let person = { name: 'swt', age: 20 } let people = Object.assign({}, person) people.name = 'pty' console.log(person) // { name: 'swt', age: 20 } console.
peng_tianyu
2022-12-15
858
0
uniapp开发微信小程序连接mqtt
存储
mqtt
vuex
客户端
下载mqtt npm i mqtt@2.18.8 存储mqtt客户端到vuex // mqtt module import mqtt from 'mqtt' const CONNECT_MQTT = 'CONNECT_MQTT' const SERVER_IP = '' const SERVER_PORT = '' const SERVER_PATH = 'mqtt' // 连接地址 const SERVICE = `${SERVER_IP}:${SERVER_PORT}/${SERVER_PAT
peng_tianyu
2022-12-15
1.8K
0
Vue自动化全局注册基础组件
lodash
前言 项目中有许多通用的组件,为了避免在每个组件都引入一个长列表,可在入口函数注册基础组件 准备 安装 lodash 库 npm i lodash --save 入口文件 import Vue from 'vue' import { camelCase, upperFirst } from 'lodash/string' const requireComponent = require.context( // 组件目录的相对路径 './components', // 是否查询其子目录
peng_tianyu
2022-12-15
464
0
发布自己的npm包
npm
webpack
git
javascript
打包
注册npm账户 ---- 注册地址 用户名,密码,邮箱后面发布会用到 注册完需要验证邮箱 会发送邮件至你注册的邮箱 按指示完成验证即可 新建项目 ---- 创建目录 mkdir package 切换目录 cd package 初始化npm npm init -y 后续可在 package.json 文件中增加更改配置 安装ESlint ---- 安装 npm i eslint 初始化配置 eslint --init 配置 Commitlint ---- 安装 Commitlint 脚手架和
peng_tianyu
2022-12-15
517
0
没了解过的Web API
promise
生命周期
事件
系统
硬件
getBattery getBattery方法提供了系统的电量信息,返回一个promise对象 navigator.getBattery().then(res => { console.log(res) /** 四个属性 charging 是否在充电 chargingTime 充满电所需时间 dischargingTime 当前电量可使用时间 level 剩余电量 */ /** 添加事件 onchargingchange 监听充电状态改变
peng_tianyu
2022-12-15
513
0
CSS属性font-smoothing
渲染
在浏览大屏demo时发现样式中这两行代码 -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; 对字体进行抗锯齿渲染使字体看起来更清晰 -webkit-font-smoothing: none | subpixel-antialiased:默认值 | antialiased:抗锯齿 -moz-osx-font-smoothing: inherit | grayscale:抗锯齿
peng_tianyu
2022-12-15
382
0
JavaScript深入之手写call、apply、bind
apply
bind
对象
函数
模拟实现call 将函数设为对象的属性 执行该函数 删除该函数 Function.prototype.myCall = function(context = window, ...args) { if(this === Function.prototype) { return undefined } context = context || window const fn = Symbol() context[fn] = this const result = conte
peng_tianyu
2022-12-15
246
0
广度优先搜索和深度优先搜索的实现
编程算法
存储
前言 ---- 广度优先搜索和深度优先搜索都是对图进行搜索的算法 广度优先搜索 广度优先搜索广泛搜索子节点,将其子节点放进候选节点中;操做候选节点时是按顺序取出候选节点,因此使用队列存储候选节点。关于队列的实现可参考队列的实现 声明广度优先搜索函数,参数为要搜索的树形图和要查找的节点 实例化队列,声明目标节点的深度,初始化0 遍历队列 获取队列第一个元素,判断是否和目标节点相等,相等返回深度 判断当前节点是否有子节点,并将子节点添加到队列中 删除当前队列第一个元素 function breadthF
peng_tianyu
2022-12-15
430
0
实现图
存储
编程算法
邻接表的问题:计算有向图的入度非常麻烦(入度:指向自己的数量,出度:指向别人的数量)
peng_tianyu
2022-12-15
317
0
红黑树
编程算法
前言 ---- 红黑树顾名思义数中的节点只能是黑色或红色,是自平衡二叉树 实现思路 红黑树的规则 节点只能是红色或黑色 根节点是黑色 叶子节点都是黑色的NIL空节点 每个红色节点的两个子节点都是黑色(每个叶子节点到根节点的路径不能有两个连续的红色节点) 任意节点到叶子节点的路径包含黑色节点的数量相同 插入节点的情况 声明N代表插入节点默认红色,P代表父节点,U代表父节点的兄弟节点,G代表祖节点 根节点为空 父节点是黑色 父节点是红色,叔节点是红色,祖节点是黑色 父节点是红色,叔节点是黑色,祖节点是黑色,插入
peng_tianyu
2022-12-15
425
0
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档