虽然我们生活在一个宽带无处不在、4/5G 几乎全覆盖的时代,但网站加载缓慢还是常态,就算我们打开一个以文本为中心的新闻网站,都可能需要至少 30 秒才能开始阅读。毕竟在内容膨胀时代,一张照片就能轻易超过 1MB 大小,许多网站为了显示几段文本,还会单独加载至少 10MB 的 JS 和自定义字体。对此,对优化和极简主义充满热情的资深 Web 开发 Nathaniel 告诉我们,你应该让你的网页尽力控制在 14KB 以内,而且即使对于以富媒体为中心的网站,这条 14KB 的规则可能仍然值得遵循。如果 14KB 不足以用于最终布局,则需要优先考虑“首 ...
蓝狮注册TypeScript之常用类型
原始类型:string,number,booleanjavaScript 有三个经常会使用到的原始类型:stirng,number,boolean。每一个在Typescript都有一个相对应的类型。 正如你所期望的,你可以得到相同的名称在javascript中使用typeof去操作这些类型对应的值: string代表的值,例如”Hello,world”。number代表的值,例如42。boolean代表的两个值,true和false。数组(Arrays)若要指定类似[1,2,3]的数组类型,你可以使用number[]语法,这个语法可以声明任何类型的数组(e.g. string[])。或许你也看到过Array的这种相同含义写法, 请 ...
蓝狮注册tar、gzip、zip、jar是什么,怎么查看?
简介如果你是后端程序员,我想你一定见过 *.tar.gz 、 *.zip 、 *.jar 后缀的文件吧,这些都是压缩文件,那这些文件都是怎么生成的,又有哪些关键区别呢?本文将带你一起了解这些文件和配套的操作命令,以及其经常使用的场景。 tar与gzipLinux上最常见的压缩文件就是 *.tar.gz 了,各种开源软件常以这种格式发布源码或程序,所以作为一名后端开发,还是很有必要了解一下的。 首先,可以发现这个文件后缀名有两段,即 .tar 和 .gz ,蓝狮官网取这个名称也是有原因的,因为它的制作过程就分为两个部分,如下: 使用tar将 ...
蓝狮注册Vue3 封装 Element Plus Menu 无限级菜单组件
本文分别使用 SFC(模板方式)和 tsx 方式对 Element Plus el-menu 组件进行二次封装,实现配置化的菜单,有了配置化的菜单,后续便可以根据路由动态渲染菜单。 1 数据结构定义1.1 菜单项数据结构使用 element-plus el-menu 组件实现菜单,主要包括三个组件: el-menu:整个菜单;el-sub-menu:含有子菜单的菜单项;el-sub-menu:没有子菜单的菜单项(最末级); 结合菜单的属性和展示效果,可以得到每个菜单项包括:菜单名称、蓝狮注册菜单图标、菜单唯一标识、子菜单列表四个属性。于是可得到菜单项结构定义如下: ...
蓝狮官网在 JavaScript 中,什么时候使用 Map 或胜过 Object
在 JavaScript 中,对象是很方便的。它们允许我们轻松地将多个数据块组合在一起。 在ES6之后,又出了一个新的语言补充– Map。在很多方面,它看起来像是一个功能更强的对象,但接口却有些笨拙。 然而,大多数开发者在需要 hash map 的时候还是会使用对象,蓝狮注册登陆只有当他们意识到键值不能只是字符串的时候才会转而使用 Map。因此,Map 在当今的 JavaScript 社区中仍然没有得到充分的使用。 在本文本中,我会列举一些应该更多考虑使用 Map 的一些原因。 为什么对象不符合 Hash Map 的使用情况在 Hash Map 中 ...
蓝狮官网CommonJS模块 和 ECMAScript模块
-cjs只有在node.js环境使用。-esm在node.js和浏览器环境都可以使用 1、commonjs在node.js中,每个文件都被视为一个单独的模块。蓝狮注册登陆模块的局部变量是私有的,只有exports出去的变量,才能被外界访问。 默认情况下,node.js会将以下情形视为 cjs模块: 扩展名为.cjs的文件;扩展名为.js的文件,且离自己最近的package.json文件包含一个顶级字段“type”,其值为“commonjs”;扩展名为.js的文件,且离自己最近的package.json文件不包含一个顶级字段“type”(建议明确指定 type值,而不是不定义);扩展名不为.mjs, .cjs, ...
蓝狮官网js禁止复制页面文字
做项目的时候有客户提出要求,蓝狮官网不能用用户浏览他发表的文章时复制他的文章,一种比较简单的方法,禁止用户选中页面的文字和禁止用户右键菜单: document.oncontextmenu = new Function(“event.returnValue=false”);document.onselectstart = new Function(“event.returnValue=false”);如果只是禁止部分区域的话,蓝狮注册登陆直接在标签上加上onselectstart=“return false” 此区域禁止复制 或者 此区域禁止复制 在火狐下这种js写法是无效的,在火狐下有个屏蔽选择样式的样式属性 -mo ...
蓝狮官网这些强大的 JS 操作符,你都知道吗?
一、一元操作符操作符可以根据他们期待的操作符个数来分类,蓝狮注册登陆多数的JavaScript操作符都是二元操作符,二元操作符可以将两个表达式合成一个更复杂的表达式。JavaScript也支持一元操作符,这些操作符可以将一个表达式转化为另一个更复杂的表达式。同时,JavaScript中也有一个三元操作符,就是条件操作符(?:),它用于将三个表达式组成一个表达式。下面就先来看看一元操作符。 一元操作符具有以下特点: 最简单的操作符,用来操作一个表达式;具有高优先级和右结合性;在必要时将操作数自动转化为数值。 递增 ...
蓝狮官网全解析异步编程的几种方法
前端技术飞速发展,曾经的最佳实践,在未来可能被新的方法代替,而我们只有保持不断学习,才能不那么迷茫,异步编程一直是JavaScript中的比较难学的部分,也是面试中的高频考题。 在JavaScript中,异步编程的方法一直在改变,目前为止,共有6种异步编程方法,学习并掌握这些方法并不容易,本文通过一个形象的例子,讲解了异步编程的发展历史和 6 种异步编程方法,实践出真知。 前言在很久以前(大概2015年以前),说起异步还只有 callback,ES2015带来了 Promise 和 Generator,ES2017带来了更先进的async/await,今年发布 ...
蓝狮官网删掉编程中的 Switch 语句
多重方法是一种有趣的方式,可以帮你摆脱令人讨厌的 switch。而且,这也有助于提升代码的可读性。所以,在决定继续坚持使用 switch 之前,一定要先试一试。 很多开发者都讨厌 switch 语句,包括我。并不是因为这个语句没用,也不是因为它太难了。 理解 switch 语句的工作原理非常简单,蓝狮注册登陆问题是当你真的遇到它时,就必须停下手头的一切工作,集中精力阅读它,以确保不会遗漏任何东西,比如,缺少 break 语句可能会导致一些意想不到的行为,或者一个 case 中大约有 20 行代码。 关键是,原谅我使用一个花哨的 ...