当我尝试遍历对象时如何使用.match?

问题描述

我正在尝试根据配置文件中的内容测试网站导航。我遇到了故障,并确定故障是因为我的配置具有标题大小写,但DOM具有大写。我希望测试与大小写无关,因为我发现读取带有标题大小写的配置文件更加容易。我确定我可以执行.toLowerCase()或.toupperCase()之类的东西,但是在我看来,最好尝试并使用.match()。我不确定在尝试通过对象键循环使用它时如何正确使用它。

样本配置:

"mainMenuNavTopLevel": {
        "Oneword": "/path1","Two Words": "/path2"
    },

样本测试:

for (const [key,value] of Object.entries(config.mainMenuNavTopLevel)) {
            let caseKey = key.match(/`"${key}"/i)  // this doesn't seem to work

            // Verify the top menu nav items displayed match the keys in the object in config
            await t.expect(Header.mainMenuNavItem.withText(caseKey).exists).ok(`"${caseKey}" Main Menu Nav key does NOT match config`);

第24行的错误 "text" argument is expected to be a string or a regular expression,but it was object.

在这种情况下,我该如何使用比赛?甚至有可能吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)