概要
1.替换json对象中属性值(包括子对象)
2.兼容多个$库写法(zepto与jquery)
3.闭包保持变量的做法
详情
1.替换json对象中属性值(包括子对象)
1 //替换json对象属性值 2 function convert(obj , prop, value){ 3 4 if(typeof obj === 'object' && typeof prop === 'string') { 5 6 for(var key in obj){ 7 8 if(obj.hasOwnProperty(key)){ //对象是否具有某属性,不会检查对象原型链中的属性 9 if(typeof obj[key] === 'object') convert(obj[key], prop, value); 10 else if(key == prop) obj[key] = value; 11 } 12 } 13 } 14 }
2.兼容多个$库写法
<script src="jquery.js"></script> <script type="text/javascript"> jQuery.noConflict(); </script> <script src="zepto.js"></script>
PS:使用不同的库的插件时,需要闭包一层
(function($){ //你的插件 })(jQuery);
3.闭包保持变量的做法
var k = (function (scope, userId) { var s = scope, id = userId; return function(){ s.delTopPers(id); }; })(scope, userId);