前端进阶提升-RobotScript系列
当成为一个熟练的页面构建人员后,面对重复而枯燥的业务代码,个人除了疲乏提不起兴趣之外,更多的是对自身能力的一种否定,业务代码让个人感受不到一点能力的提升,犹如温水煮青蛙,是时候跳出舒适圈了。
Beq
前端开发者
624144061@qq.com
lbq11147
展开
-
RobotScript#3 字符串扁平化,处理()
task: 上一题:RobotScript#2:实现循环指令的重复化(字符串扩展)并画出轨迹 基于RobotScript#2,(*)2 等价 **,示例如下: F4L((F4R)(F4L)2)2(F4R)2F4 解题: 只要将“()”祛除即可,不考虑输入字符串异常的情况下,最开始想到的是转成AST,用text记录文本,()最为层级分割,但是没能解答出来,于是用正则递归处理字符串,直到字符串中不存在括号。 关键代码如下: funct...原创 2020-05-14 11:41:45 · 237 阅读 · 0 评论 -
RobotScript#2:实现循环指令的重复化(字符串扩展)并画出轨迹
task: 你将遇到由L,R,F及数字组合而成的字符串,通过此字符串实现移动轨迹绘制,其中 L 代表当前方向向左拐,R代表向右,F表示在当前方向前进,用 "*" 标记走过的位置,其中只有F能够产生"*",LR只有调整方向的作用,初始方向向右,并且会留下*; 字母后面接上数字表示字母会重复任意次。 示例: LF5R5F5RFLFRFF 解答: 首先要将接收的指令转化为连续的独立的字符(指令),如接收的code为“LF5”转为“LFFFFF”,直接利用正则匹配/[LRF]\d+/g,利用..原创 2020-05-14 10:18:48 · 352 阅读 · 0 评论 -
RobotScript#1第一步:实现语法高亮
任务描述: Your MyRobot-specific (esoteric) scripting language called RoboScript only ever contains the following characters:F,L,R, the digits0-9and brackets ((and)). Your goal is to write a functi...原创 2020-05-07 11:44:38 · 288 阅读 · 0 评论