all和letter的问题

all和letter的问题

all和letter这两个参数是replace这个方法内置的参数?是不是不能自己定义写法?如果正则里有几个括号的话,letter是返回一个数组吗?还是增加参数的个数,letter1,letter2,letter3……这样?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕码 2019-06-05 11:54:29

同学你好!

就本段代码而言function(all,letter){ return letter.toUpperCase(); }是可以自定义的

all,letter都是参数。all用来传递正则匹配到的所有字符。letter用来传递正则中小括号内匹配到的字符。letter返回的不是一个数组。

http://img1.sycdn.imooc.com//climg/5cf73caa0001d27204290171.jpg

http://img1.sycdn.imooc.com//climg/5cf73ca60001654902240073.jpg

如果帮助到了你 欢迎采纳 祝学习愉快~

  • 提问者 慕瓜9218797 #1
    var str="background-color"; var p=/(-)([a-z])/g; var w=str.replace(p,function(all,letter){ console.log(letter); return letter; }); 我用这段代码试了一下,打印的是-。letter似乎只能表示第一个小括号里的内容?
    2019-06-05 13:17:14
  • 好帮手慕码 回复 提问者 慕瓜9218797 #2
    同学你好! 是的,在同学的例子里面只能匹配到第一个括号里的。祝学习愉快~
    2019-06-05 13:43:56
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
HTML5&CSS3进阶与常用框架 2018
  • 参与学习       315    人
  • 提交作业       136    份
  • 解答问题       626    个

如果你有H5、CSS3、JS基础,热爱前端并希望在前端应用方面不断进步,那就来吧,本路径为你带来的课程有HTML5进阶、CSS3进阶、JS面向对象、jQ基础、Less等,助你进一步提升前端开发技能

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师