From e6b63c966b71d6d5dfe2d451d63451b05255ff3d Mon Sep 17 00:00:00 2001 From: qiuqianaw Date: Tue, 18 Jan 2022 17:56:10 +0800 Subject: [PATCH] pass hw1 --- homework/1/rename.js | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/homework/1/rename.js b/homework/1/rename.js index 0bbd947..c685894 100644 --- a/homework/1/rename.js +++ b/homework/1/rename.js @@ -7,7 +7,34 @@ function transform(root, originName, targetName) { return traverse((node, ctx, next) => { // TODO: 作业代码写在这里 - if (node.type === 'xxx') { + // console.log(node) + switch (node.type) { + case "VariableDeclarator": + if (node.id.name === originName) { + node.id.name = targetName; + } + break; + case "FunctionDeclaration": + if (node.id.name === originName) { + node.id.name = targetName; + } + break; + case "MemberExpression": + // console.log(node) + if (node.object != null && node.object.name === originName) { + node.object.name = targetName; + } + break; + + case "BinaryExpression": + if (node.left != null && node.left.name === originName) { + node.left.name = targetName; + } + if (node.right != null && node.right.name === originName) { + node.right.name = targetName; + } + break; + } // 继续往下遍历