随笔分类 -  JavaScript

摘要:1. 注释的 功能解析 // ==UserScript== // @name testFileName 文件名称 // @namespace http://tampermonkey.net/ 命名空间 大概是用于保证脚本的唯一性 // @version 2024-05-14 // @descript 阅读全文
posted @ 2024-05-20 09:43 story.Write(z) 阅读(91) 评论(0) 推荐(0) 编辑
摘要:1.现象 某些刚学习一段时间前端,或者学习一段时间后的一些人不知道为什么打印对象,点开查看某属性有值,但是直接打印无值. 比较常见的一个开发现象就是发现自己直接打印对象有值,但是进行页面跳转或者其他业务请求之类的时候发现参数拿不到 数组也是对象,也存在此现象 2.原因 直接打开控制台的时候里面没有值 阅读全文
posted @ 2024-04-28 17:55 story.Write(z) 阅读(489) 评论(0) 推荐(0) 编辑
摘要:1.现象 当在vue中打印对象的时候会发现有一些属性或者全部属性都是显示的...,点击展开后才能看到真正的值是什么. 2.原因 因为在vue中对象都是用了代理重写了get,由于get重写也就导致了浏览器不能直接获取到具体的值,因此才会在打印的时候为...,手动点击展开才显示具体的值 3.想看具体的值 阅读全文
posted @ 2024-04-28 17:41 story.Write(z) 阅读(142) 评论(0) 推荐(0) 编辑
摘要:filter过滤假值 [1,2,null].fiter(Boolean) 2.Object.is 健壮的相等判断 Object.is(NaN,NaN) Object.is(+0,-0) Object.is({},{}) const obj = {} Object.is(obj,obj) 3.~与运算 阅读全文
posted @ 2024-04-15 11:21 story.Write(z) 阅读(7) 评论(0) 推荐(0) 编辑
摘要:1.instanceof 如果环境存在多个全局执行上下文(例如iframe嵌套),从父页面传一个数组arr给子页面则 arr instance of Array 为false,其他引用类数据都会这样 最好不要用instanceof判断 阅读全文
posted @ 2024-04-15 11:17 story.Write(z) 阅读(6) 评论(0) 推荐(0) 编辑
摘要:1. 常见实现原理 标记清理 当变量进入对应上下文中时标记函数变量为存在使用,当变量不在当前上下文时标记当前变量为未使用 function foo() { // 执行进入函数,变量定义赋值 const num = 9 // 标记变量num为使用中 } // 开始执行函数 foo() // 函数执行完 阅读全文
posted @ 2024-04-15 11:13 story.Write(z) 阅读(3) 评论(0) 推荐(0) 编辑
摘要:1. 测试想法 在读js 红宝书的时候,在书上看到位运算属于底层运算比直接运算速度要快,因此想要验证下 2.测试代码 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" conten 阅读全文
posted @ 2024-04-15 11:12 story.Write(z) 阅读(38) 评论(0) 推荐(0) 编辑
摘要:1. 字符串是不可变的 字符串一旦创建就是不可变的,后续的修改都是新建一个新的字符串而不是在原有的字符串上修改 // 在内存中开辟 可以存放五个字母的空间 str指向该空间 let str = 'first' // 在内存中 开辟可以存放 10个字母的空间 重新将str指向该空间 str += 'n 阅读全文
posted @ 2024-04-15 11:11 story.Write(z) 阅读(7) 评论(0) 推荐(0) 编辑
摘要:1. 数值10.0 这种类似的会被去掉数值后的0 之所以这样是因为,整数的存储空间占用比浮点数小,当一个数值不是真浮点数(即10.0这种格式),会被转换为整数10,如果业务中有一些需求需要进行数值位数保留,则需要转换数值为字符串 2.小数多余六个0,会被转换为科学计数法 3.初学者面试题 0.1+ 阅读全文
posted @ 2024-04-15 11:11 story.Write(z) 阅读(5) 评论(0) 推荐(0) 编辑
摘要:1.为什么会出现跨域问题 浏览器基于安全性考虑(减少一些攻击发生的可能性)不允许非同源(同源是指协议、域名、端口三者相同,即使两个不同的域名指向同一个ip地址也是非同源。主域名相同二级域名不同也为不同源例如 https://abc.com 与https//:www.abc.com)请求发生。 其实虽 阅读全文
posted @ 2024-04-15 11:10 story.Write(z) 阅读(40) 评论(0) 推荐(0) 编辑
摘要:1. cookie 1_1: 简述 HTTP Cookie(也叫 Web Cookie 或浏览器 Cookie)是服务器发送(由服务器设置后返回给浏览器端)到用户浏览器并保存在本地的一小块数据。浏览器会存储 cookie 并在下次向同一服务器再发起请求时携带并发送到服务器上。通常,它用于告知服务端两 阅读全文
posted @ 2024-04-15 11:09 story.Write(z) 阅读(11) 评论(0) 推荐(0) 编辑
摘要:1. 来源 想对于自己接触前端日常学习与思考的代码行数进行一个统计,看自己大约敲了多少代码 2.代码 const fs = require('fs') const path = require('path') function calculateCodeLines ({ directory = '' 阅读全文
posted @ 2024-04-15 11:07 story.Write(z) 阅读(72) 评论(0) 推荐(0) 编辑
摘要:1.探究 在看b站视频,滑到进度条的时候突发奇想,想知道这个预览图是怎么做到的 打开控制台,发现每次移动鼠标悬浮位置的时候都会发出一条网络请求,并且该请求的size显示来源于内存,当时以为每次加载视频的时候先提前把所有预览图都加载好了吗?但是刷新后去看发现只有当鼠标移动的时候才会请求该图片并且来源于 阅读全文
posted @ 2024-04-15 11:06 story.Write(z) 阅读(417) 评论(0) 推荐(0) 编辑
摘要:0.原理 通过在前端静态文件目录下维护一个版本,首次进入页面存储当前版本,轮询查询静态文件版本是否发生变化, 如果变化则重新加载页面,如果未变化,则继续轮询 1. 优点 比通过后端维护在数据库版本进行查询消耗更小,不需要查询数据库,也不用走到后台代码层,只需要访问到ngxin/appache层 并且 阅读全文
posted @ 2024-04-15 10:41 story.Write(z) 阅读(103) 评论(0) 推荐(0) 编辑
摘要:// 获取时间差 返回值格式:01天02小时30秒 export function caclulateDiffTime(start, end): string { start = new Date(start).getTime(); end = new Date(end).getTime(); le 阅读全文
posted @ 2024-04-15 10:41 story.Write(z) 阅读(12) 评论(0) 推荐(0) 编辑
摘要:1.为什么需要token 随着互联网的发展,为了更安全,以及更好的用户体验,逐渐产生了token这个技术方案 之所以使用token是因为http/https协议本身是无状态的,不能进行信息的存储 (cookie可以进行信息存储,但存在一些限制) token的作用是为了加强用户信息安全性,而添加的一层 阅读全文
posted @ 2024-04-15 10:38 story.Write(z) 阅读(225) 评论(0) 推荐(0) 编辑
摘要:1. 函数作用域确定于函数定义期间 let count = 1 function fooInner() { console.log(count) // zdz-log } function foo() { let count = 2 fooInner() } foo() // 1 箭头函数和普通函数 阅读全文
posted @ 2024-04-15 10:30 story.Write(z) 阅读(5) 评论(0) 推荐(0) 编辑
摘要:1.hahs <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" 阅读全文
posted @ 2024-04-15 10:29 story.Write(z) 阅读(8) 评论(0) 推荐(0) 编辑
摘要:1. async function Request () { await new Promise(res => { setTimeout(() => { console.log(1) res() }, 1000) }) console.log(4); new Promise(res => { set 阅读全文
posted @ 2024-04-15 10:27 story.Write(z) 阅读(25) 评论(0) 推荐(0) 编辑
摘要:1.基本值,会直接将值传递给函数的参数 2.引用值传递,是将引用值地址值传递给函数参数 外界定义的a并没有被修改引用地址,说明参数传递进来的是地址值,如果参数是引用传递,那么外界的a应该被修改为 a = 此时值被改变,是直接操作了引用对象地址指向的内存空间,函数参数传递进来的是值,此时修改的并不是传 阅读全文
posted @ 2024-04-15 10:19 story.Write(z) 阅读(14) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示