草庐IT

javascript - 在桌面上用 javascript 编写程序的最简单方法?

我正在寻找在桌面而非浏览器中编写Javascript程序/脚本的方法。我希望它像Python一样运行-从命令行,能够读取文件、写入文件等。我发现提到的所有解决方案(Rhino、spidermonkey、V8)都是用于嵌入的。有没有人为编写具有操作系统访问等全部功能的独立程序做过简单的实现?Windows最好,也可能是Linux 最佳答案 Hans已经提到了WindowsScriptHost,但是有一个很酷的JScript编译器,您可能已经安装了它(它与.NET一起提供)。您可以使用任何.NET库编写JavaScript,并将其编译为

javascript - 为什么连续调用 `pattern.test(name)` 结果相反

这个问题在这里已经有了答案:WhydoesaRegExpwithglobalflaggivewrongresults?(7个答案)关闭7年前。为什么这段代码先返回true,然后返回falsevarpattern=newRegExp("mstea",'gi'),name="AmandaOlmstead";console.log('1',pattern.test(name));console.log('1',pattern.test(name));演示:Fiddle

Javascript 正则表达式.test() "Uncaught TypeError: undefined is not a function"

只是尝试通过.test()函数使用javascript的正则表达式功能。varnameRegex='/^[a-zA-Z0-9_]{6,20}$/';if(nameRegex.test($('#username').val())){...}错误在这一行if(nameRegex.test($('#username').val())){调试器在那里中断并说“UncaughtTypeError:undefinedisnotafunction”。好像.test()没有定义?不应该吗? 最佳答案 就目前而言,nameRegex不是正则表达式而是

javascript - Jest 在第一次失败后停止测试套件

我正在使用Jest用于测试。我想要的是在当前测试套件中的测试失败时停止执行该测试套件。--bailoption这不是我需要的,因为它会在一个测试套件失败后停止其他测试套件。 最佳答案 感谢thiscommentongithub我能够使用自定义testEnvironment解决此问题。为此,jest-circus需要通过npm/yarn安装。值得注意的是jestwillsetjest-circustothedefaultrunnerwithjestv27.首先需要调整jest配置:jest.config.jsmodule.export

javascript - 使用 Javascript 转到本地 URL

与here相同的问题但我需要转到Firefox中的本地URL我试过这样的代码varurl="file:///E:/Test/Test.htm";window.location.href=url;但是id没有用。尝试使用window.location=url;并尝试使用url="file://E:/​​Test/Test.htm";(double"/"而不是三重“/”),但仍然不起作用。谢谢 最佳答案 当我尝试这样做时:window.location.href="file:///C:/Users/Cerbrus/Documents/S

javascript - Knockout.js - 动态列,但每行最多 5 个

我在这里找到了一个类似的问题/答案:Howtorenderatablewithsomefixedandsomedynamiccolumns但是并没有完全解决我的问题。我试图弄清楚如何将动态列的数量限制为每行5个,如果View模型中的项目超过5个,则创建一个新行并重复数组中所有5个组。例如:varvm={item:{name:'test1'},item:{name:'test2'},item:{name:'test3'},item:{name:'test4'},item:{name:'test5'},item:{name:'test6'}};给那个模型,我怎么得到这个表?test1tes

javascript - 如何遍历一个div的子div并获取子div的id?

我有一个id为test的div通过foreach循环,我在测试div中创建了一些内部div。所以就变成了这个样子。我在javascript函数中获取父divid“test”。现在我想遍历测试div的内部div(子div)并一个一个地获取每个div的id并通过javascript设置它们的样式。对此有什么想法吗? 最佳答案 试试这个varchildDivs=document.getElementById('test').getElementsByTagName('div');for(i=0;i

javascript - Chrome 扩展,javascript : Why is this firing twice?

我的(测试)Chrome扩展中有一段非常非常简单的代码:functiontest(){alert("Intest!");}chrome.tabs.onUpdated.addListener(function(tabid,changeinfo,tab){varurl=tab.url;if(url!==undefined){test();}});我的问题是,为什么test()会触发两次?更重要的是,如何让它只触发一次? 最佳答案 查看调度事件时的不同状态。我认为,当状态为“正在加载”或状态为“完成”时,它会被分派(dispatch)一次

javascript - 匹配除所有空格以外的任何内容的正则表达式

我需要一个(符合javascript的)正则表达式来匹配除仅包含空格的字符串之外的任何字符串。案例:""(onespace)=>doesn'tmatch""(multipleadjacentspaces)=>doesn'tmatch"foo"(nowhitespace)=>matches"foobar"(whitespacebetweennon-whitespace)=>matches"foo"(trailingwhitespace)=>matches"foo"(leadingwhitespace)=>matches"foo"(leadingandtrailingwhitespace)

javascript - 在使用 react-test-renderer 的 Jest 快照测试中,Refs 为空

目前我正在componentDidMount上手动初始化Quill编辑器,Jest测试对我来说失败了。看起来我得到的ref值在jsdom中是空的。这里有问题:https://github.com/facebook/react/issues/7371但看起来refs应该有效。有什么我应该检查的想法吗?组件:importReact,{Component}from'react';importlogofrom'./logo.svg';import'./App.css';classAppextendsComponent{componentDidMount(){console.log(this._