zepto--toggle函数


学习zepto源码时,发现一个很佩服的写法。

关键点在三元选择符。

首先,假定settings是有传入参数的,此时settings会进行隐式强制类型转换为布尔值,如果为真,元素显示,如果为假,元素隐藏。无可厚非,最具有技术性的(我自己认为的),是在未传入settings参数的时候。

解析一下这段,如果settings!==undefined 取传入的settings参数,即进行到上面提到的settings有参数的步骤。

如果没传参数,即settings === undefined ,此时,会直接取当前元素的display的值,判断是否为‘none’,如果为none,条件结果为真,如果不是‘none’,条件结果为假。然后进行后面的显示隐藏。

相当于一条js代码进行了

1、判断是否传递参数,

2、传递参数, 取值settings,判断settings,强制转换布尔值,

3、未传递参数,取当前元素的display的值,是否为none,也转换为布尔值。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM