草庐IT

方括号

全部标签

javascript - 为什么 JavaScript IIFE 需要括号?

这个问题在这里已经有了答案:Explaintheencapsulatedanonymousfunctionsyntax(10个答案)关闭6年前。我正在阅读有关JavaScriptIIFE的内容,目前为止理解的概念,但我想知道外面的括号。具体来说,为什么需要它们?例如,(function(){varmsg='IloveJavaScript';console.log(msg);}());效果很好,但是function(){varmsg='IloveJavaScript';console.log(msg);}();产生语法错误。为什么?关于IIFE有很多讨论,但我没有看到关于为什么需要括号的

javascript - 函数定义中参数周围的方括号

我在theEmberCLIwebsite中遇到了以下代码:exportdefaultEmber.Helper.helper(function([value]){returnvalue.toUpperCase();});让我感到困惑的是value参数周围的方括号。我可以在函数调用中理解它,但为什么在函数定义中? 最佳答案 这是一个destructuringassignment.@recursive描述的行为是正确的,但了解它不限于第一个元素可能会有所帮助。如果它是用三个元素编写的:函数xyz([a,b,c]){...}然后a、b和c都

javascript - 使用 RegExp 匹配括号中的数字然后递增它

我一直在尝试找到一种方法来匹配Javascript字符串中的数字,该数字在字符串末尾被括号括起来,然后递增它。假设我有一个字符串:varname="ItemName(4)";我需要一个RegExp来匹配(4)部分,然后我需要递增4,然后将其放回字符串中。这是我目前的正则表达式:\b([0-9]+)$\b这个正则表达式不起作用。此外,我不知道如何提取检索到的整数并将其放回字符串中的相同位置。谢谢。 最佳答案 replace方法可以将一个函数作为它的第二个参数。它获取匹配项(包括子匹配项)并返回替换字符串。其他人已经提到括号需要转义。"

javascript - 用于在最后一个括号 () 之间获取文本的正则表达式

我想使用javascript提取最后一个()之间的文本例如varsomeText="don'textract(value_a)butextract(value_b)";alert(someText.match(regex));结果应该是value_b感谢帮助 最佳答案 试试这个\(([^)]*)\)[^(]*$查看hereonregexrvarsomeText="don'textract(value_a)butextract(value_b)";alert(someText.match(/\(([^)]*)\)[^(]*$/)[1]

JavaScript 将数组打印为带括号和引号的字符串

varfruits=["Banana","Orange","Apple","Mango"];如果我有上面的数组并想将它作为["Banana","Orange","Apple","Mango"]在DOM中输出给用户执行此操作的最佳方法是什么?我试过fruits.toString();输出为Banana,Orange,Apple,Mango 最佳答案 使用JSON.stringifyJSON.stringify(fruits) 关于JavaScript将数组打印为带括号和引号的字符串,我们在

javascript - 匹配括号的正则表达式

对于模板引擎,我使用正则表达式来识别字符串中括号内的内容。例如,正则表达式需要匹配{key}或或[element]。目前我的正则表达式是这样的:varrx=/([\[\{])]/;问题是这样的正则表达式不会强制匹配括号。例如在以下字符串中:[{lastName},{firstName}]正则表达式将匹配[{lastName}有没有办法定义匹配的括号?例如,如果左括号是[那么右括号必须是],而不是}或> 最佳答案 最好的方法是拆分成3个正则表达式:varrx1=/\[([^\]]+)]/;varrx2=/\(([^)]+)\)/;va

javascript - 带有两个括号和两个参数的 JS 函数

我正在尝试了解使用两个括号和两个参数运行的函数的工作原理。像这样:add(10)(10);//returns20我知道如何编写一个带有两个参数的代码:functionadd(a,b){returna+b;}add(10,10);//returns20我如何更改该函数,使其可以使用一组或两组参数运行,并产生相同的结果?感谢任何帮助。简直让我摸不着头脑。提前致谢! 最佳答案 HowcouldIalterthatfunctionsoitcouldberunwithonesetofparameters,ortwo,andproducethe

javascript - 删除括号正则表达式之外的所有内容

这就是我要删除的字符串:varmyl='okok{"msg":"uc_okok"}'结果应该是:{"msg":"uc_okok"}我试过使用正则表达式varnews=myl.toString().replace(/\{(.*""?)\}/g);但是它不起作用?有什么想法吗? 最佳答案 如何使用以下内容;myl.toString().replace(/.*?({.*}).*/,"$1")它应该也适用于多层支架;str='okok{"msg":"uc_okok"}';console.log(str.replace(/.*?({.*}).

javascript - 什么时候使用括号,什么时候不用?

我怎么会说:varmyFunction=function(){setTimeout(myFunction,1000);}myFunction();为什么setTimeout中的函数调用不需要括号,但最后一行需要? 最佳答案 简而言之myFunction引用函数myFunction()调用函数更多单词setTimeout需要函数引用*作为参数。在某些情况下setTimeout(myFunction(),1000)可能有意义,例如myFunction()返回一个函数,例如functionmyFunction(){returnfuncti

javascript - 为什么使用||时 'Unexpected "."'括号中默认值的运算符

得到意想不到的“。”来自jslint(http://jslint.com/)的这段代码:functiontest(foo){"usestrict";return(foo||"").replace("bar","baz");}为什么jslint对||有问题运算符强制一个空字符串,以便可以执行替换而不会导致错误,以防foo作为未定义传递?这通过了:functiontest(foo){"usestrict";varxFoo=(foo||"");returnxFoo.replace("bar","baz");}我知道它是基于意见的,我可以忽略它,等等...但试图理解为什么这样的链接不受欢迎。也