【发布时间】:2014-11-15 16:36:58
【问题描述】:
我对 findAndReplace 函数中的以下 sn-p 感到很困惑:
var regex = typeof searchText === 'string' ?
new RegExp(searchText, 'g') : searchText,
childNodes = (searchNode || document.body).childNodes,
cnLength = childNodes.length,
excludes = 'html,head,style,title,link,meta,script,object,iframe';
我认为三元运算符暗示如果searchText 是字符串,则创建正则表达式对象。但似乎变量childNodes、cnLength 和excludes 的设置与searchText 的类型无关。
我想我可能只是对语法感到很困惑——但第 3 行到第 5 行是条件语句的一部分还是单独的?如果它们是分开的,为什么第 2 行末尾没有分号?
【问题讨论】:
-
只是逗号;变量 a=x, b=y, c=z;所以
var regex=expression, childnodes=expression....
标签: javascript conditional-statements ternary-operator