日常练习记录
这个人很懒,没有介绍。
Lily的秋天
这个作者很懒,什么都没留下…
展开
-
常用网站汇总
目录1.练习2.学习基础3.论坛博客4.在线调试5.前端框架6.阅读1.练习freeCodeCamp:https://chinese.freecodecamp.org/learn/leetcode:https://leetcode-cn.com/problemset/all/牛客:https://www.nowcoder.com/contestRoom2.学习基础菜鸟:https://www.runoob.com/牛客:https:/原创 2021-09-01 10:13:00 · 207 阅读 · 1 评论 -
freeCodeCamp “使用 CSS 和 HTML 创建更复杂的形状”练习-----创建“爱心”❤️形状
世界上最流行的形状非心形莫属了,在本挑战中我们将用纯 CSS 创建一个心形。 但是首先你需要了解伪元素::before和::after。 伪元素可以在所选元素之前或之后添加一些内容。 在下面的代码中,::before伪元素用来给 class 为heart的元素添加一个正方形:.heart::before { content: ""; background-color: yellow; border-radius: 25%; position: absolute; hei...原创 2021-09-15 09:17:52 · 230 阅读 · 0 评论 -
freeCodeCamp “使用捕获组搜索和替换“ 练习
引入可以在字符串上使用.replace()方法来搜索并替换字符串中的文本。.replace()的输入首先是想要搜索的正则表达式匹配模式。 第二个参数是用于替换匹配的字符串或用于执行某些操作的函数。let wrongText = "The sky is silver.";let silverRegex = /silver/;wrongText.replace(silverRegex, "blue");replace调用将返回字符串The sky is blue.。你还可...原创 2021-09-08 15:59:50 · 235 阅读 · 1 评论 -
freeCodeCamp “正向先行断言和负向先行断言“ 练习
引入先行断言 (Lookaheads)是告诉 JavaScript 在字符串中向前查找的匹配模式。 当想要在同一个字符串上搜寻多个匹配模式时,这可能非常有用。有两种先行断言:正向先行断言(positive lookahead)和负向先行断言(negative lookahead)。正向先行断言会查看并确保搜索匹配模式中的元素存在,但实际上并不匹配。 正向先行断言的用法是(?=...),其中...就是需要存在但不会被匹配的部分。另一方面,负向先行断言会查看并确保搜索匹配模式中的元素不...原创 2021-09-08 14:26:52 · 792 阅读 · 1 评论 -
freeCodeCamp “限制可能的用户名“ 练习
需要检索数据库中的所有用户名。 以下是用户在创建用户名时必须遵守的一些简单规则。 用户名只能是数字字母字符。 用户名中的数字必须在最后。 数字可以有零个或多个。 用户名不能以数字开头。 用户名字母可以是小写字母和大写字母。 用户名长度必须至少为两个字符。 两位用户名只能使用字母。 分析:根据题目,将用户名分为2种情形:要么 字母+字母(≥1个)+数字(0或多个) ; 要么 字母+数字(≥2个),这样就“提取公因式”得到:字母 ( ...原创 2021-09-08 13:42:05 · 410 阅读 · 1 评论 -
freeCodeCamp 正则类练习总结
使用测试方法:.test()方法 括号内传入字符串提取匹配项: .match() 括号内传入正则表达式同时用多种模式匹配文字字符串:| eg:/a|b|x/全局匹配: g 使用时放在//后面匹配时忽略大小写: i 使用时放在//后面匹配所有: /./匹配字母表中的数字和字母:- eg:[a-z]、[0-9]匹配单个未指定的字符:[^a]匹配出现零次或多次的字符:*用惰性匹配来查找字符:?字...原创 2021-09-08 11:34:13 · 195 阅读 · 0 评论 -
freeCodeCamp ‘用惰性匹配来查找字符‘ 练习
引入在正则表达式中,贪婪(greedy)匹配会匹配到符合正则表达式匹配模式的字符串的最长可能部分,并将其作为匹配项返回。 另一种方案称为懒惰(lazy)匹配,它会匹配到满足正则表达式的字符串的最小可能部分。可以将正则表达式/t[a-z]*i/应用于字符串"titanic"。 这个正则表达式是一个以t开始,以i结束,并且中间有一些字母的匹配模式。正则表达式默认是贪婪匹配,因此匹配返回为["titani"]。 它会匹配到适合该匹配模式的最大子字符串。但是,你可以使用...原创 2021-09-07 16:57:32 · 200 阅读 · 1 评论 -
freeCodeCamp “promise“ 几个练习
目录1.创建一个 JavaScript Promise2.通过 resolve 和 reject 完成 Promise3.用 then 处理 Promise 完成的情况4.使用 catch 处理 Promise 失败的情况1.创建一个 JavaScript PromisePromise 是异步编程的一种解决方案 - 它在未来的某时会生成一个值。 任务完成,分执行成功和执行失败两种情况。Promise是构造器函数,需要通过new关键字来创建。 构造器参数是一个函数,该函数有两个...原创 2021-09-04 10:31:17 · 262 阅读 · 1 评论 -
freeCodeCamp “使用 getter 和 setter 来控制对象的访问“ 练习
引入你可以从对象中获得一个值,也可以给对象的属性赋值。这些操作通常被称为getters以及setters。Getter 函数的作用是可以让对象返回一个私有变量,而不需要直接去访问私有变量。Setter 函数的作用是可以基于传进的参数来修改对象中私有变量。 这些修改可以是计算,或者是直接替换之前的值。举例如下:class Book { constructor(author) { this._author = author; } // getter get wri...原创 2021-09-03 16:40:09 · 468 阅读 · 1 评论 -
freeCodeCamp “使用 class 语法定义构造函数“ 练习
引入ES6 提供了一个新的创建对象的语法,使用关键字class。值得注意的是,class只是一个语法糖,它并不像 Java、Python 或者 Ruby 这一类的语言一样,严格履行了面向对象的开发规范。在 ES5 里面,我们通常会定义一个构造函数constructor,然后使用new关键字来实例化一个对象:var SpaceShuttle = function(targetPlanet){ this.targetPlanet = targetPlanet;}var z...原创 2021-09-03 15:44:24 · 234 阅读 · 1 评论 -
freeCodeCamp “将 rest 操作符与函数参数一起使用“ 练习
引言ES6 推出了用于函数参数的rest 操作符帮助我们创建更加灵活的函数。 rest 操作符可以用于创建有一个变量来接受多个参数的函数。 这些参数被储存在一个可以在函数内部读取的数组中。示例function howMany(...args) { return "You have passed " + args.length + " arguments.";}console.log(howMany(0, 1, 2));console.log(howMany("string"..原创 2021-09-02 09:52:59 · 287 阅读 · 1 评论 -
freeCodeCamp ‘使用递归创建一个倒计时‘ 练习
引入在上一个挑战,学习了怎样用递归来代替for循环。 现在来学习一个更复杂的函数,函数返回一个从1到传递给函数的指定数字的连续数字数组。正如上一个挑战提到的,会有一个base case。 base case 告诉递归函数什么时候不再需要调用其自身。 这是简单 情况,返回得到的值。 还有recursive call,继续用不同的参数调用自身。 如果函数无误,一直执行直到 base case 为止。比如,如果想写一个递归函数,返回一个数字1到n的连续数组。 这个函数需要接收一...原创 2021-09-01 11:09:35 · 439 阅读 · 1 评论 -
freeCodeCamp “资料查找“ 练习
题目要求:有一个对象数组,里面存储着通讯录。lookUpProfile函数已经写好了参数,需要name和属性 (prop) 参数。函数将会检查通讯录中是否存在一个firstName与传入的name相同的联系人。 如果存在,那么还需要检查对应的联系人中是否存在prop属性。 如果它们都存在,函数返回 prop 属性对应的值。 如果name不对应于任何联系人,然后返回字符串No such contact。 如果prop属性在匹配name的联系人里不存在,返回...原创 2021-09-01 09:12:16 · 387 阅读 · 1 评论 -
freeCodeCamp “记录集合“ 练习
这道题实在太拗口,看了几个博主才看明白题目的意思,记录下来。题目描述:给定一个对象,用来表示部分音乐专辑收藏。 每张专辑都有几个属性和一个唯一的 id 号作为键值。 并非所有专辑都有完整的信息。以updateRecords函数开始,这个函数需要一个对象records,包含一个音乐专辑集合,一个id,一个prop(如artist或tracks),和一个value。 使用下面的规则完成函数来修改传递给函数的对象。规则描述:函数必须始终返回整个音乐专辑集合对象。 ...原创 2021-08-31 15:57:15 · 756 阅读 · 1 评论