来自jQuery 1.7rc1 source code(第1822-24行):
if ( jQuery.isArray( name ) ) {
name = name;
}
拥有name = name
有什么意义?这两个name
可能不同吗?
答案 0 :(得分:4)
我认为它是为了便于阅读而添加的。名称应该是一个数组,并不总是如此。在某些情况下,它会转换为数组,但在这种情况下,它“很好”。
整个片段:
// Support space separated names
if ( jQuery.isArray( name ) ) {
name = name;
} else if ( name in thisCache ) {
name = [ name ];
} else {
// split the camel cased version by spaces
name = jQuery.camelCase( name );
if ( name in thisCache ) {
name = [ name ];
} else {
name = name.split( " " );
}
}
答案 1 :(得分:4)
该声明可能被添加为与其他声明一致。 name = name
可以省略,但可能会保持清楚地显示块的功能。
具有完全相同名称的变量无法保持不同的值,彼此相邻。
代码的
// Support space separated names
if ( jQuery.isArray( name ) ) {
name = name;
} else if ( name in thisCache ) {
name = [ name ];
} else {
// split the camel cased version by spaces
name = jQuery.camelCase( name );
if ( name in thisCache ) {
name = [ name ];
} else {
name = name.split( " " );
}
}
答案 2 :(得分:2)
看起来它只是所有分支if语句之间的一致性(它们都分配name
)。