任何人都可以解释这段代码的作用及其工作原理吗?
function(a) {
return !n.isString(a) ? a : a.replace(/\\/g,"\\\\")
}
V(a) {
return !n.isString(a) ? a : a.replace(/%/g,"%25")
}
!n
之后的return
是什么意思?
这两个功能在做什么?
答案 0 :(得分:1)
第一部分基本上是指“如果a不是字符串,则返回a,否则将所有\
替换为\\
。
第二部分大致相同,但%
和%25
。
!n.isString
似乎是“不是n.isString”或“不是字符串”。要更好地理解这一点,您可以将其视为:!(n.isString)
,其中n
是实现isString
方法的对象/类。
a ? b : c
运算符称为三元运算符,与
if (a) {
return b
} else {
return c
}