js观察者模式是什么
说明1、定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知。2、包括Subject:主体对象(状态发布者),维护观察者列表,添加或删除观察者。Observer:观察者,知道自己观察的状态是描述的哪一个对象,提供更新操作。实例 class Subject { construc...
2024-01-10js外观模式的介绍
说明1、为一组复杂的子系统接口提供一个更高级的统一接口,通过这个接口使得对子系统接口的访问更容易,不符合单一职责原则和开放封闭原则。2、外观模式的优势是易于使用,而且本身也比较轻量级。但也有缺点 外观模式被开发者连续使用时会产生一定的性能问题,因为在每次调用时都要检测功...
2024-01-10js代理模式是什么
说明1、为其他对象提供一种代理,便以控制对这个对象的访问,不能直接访问目标对象。2、代理模式最基本的形式是对访问进行控制,而本体对象则负责执行所分派的那个对象的函数或者类。优点可以保护对象,代理对象可以代替本体被实例化,并使其可以被远程访问。优化性能,减少开销很大的对...
2024-01-10php数组中array_product函数的使用
1、函数功能是计算数组中所有值的乘积,在累乘数组中所有成员的时候会将成员的值转为数值类型。当传递的参数为一个bool成员所组成的数组时,众所周知true会被转为1,false会被转为0。<?php$power = ['read' => true, 'write' => true, 'execute' => true];var_dump((bool)array_product($power));// 结果 true$power = ['read...
2024-01-10php中array_filter清除空值
说明1、array_filter的作用是用回调函数过滤数组中的单元,第二个参数其实是个回调函数,向数组的每个成员都执行这个回调函数。2、若回调函数的返回值为true,便保留这个成员,为false则忽略。特性如果没有提供callback函数,将删除array中所有等值为 FALSE 的条目。实例<?php$input = ['foo', false, -1, null,...
2024-01-10php数组中如何重置索引
1、array_values 函数并不止重置数字索引还会将字符串键名也同样删除并重置。<?php$input = [0 => 233, 99 => 666];var_dump(array_values($input));// 结果 [0 => 233, 1 => 66]2、array_slice函数的功能是取出数组的中的一段,但它默认会重新排序并重置数组的数字索引。可以利用它重置数组中的数字索引。<?php$input ...
2024-01-10php中实现数组去重的函数
1、array_unique()先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。<?php$input = ['you are' => 666, 'i am' => 233, 'he is' => 233, 'she is' => 666];$result = array_unique($input);var_dump($result);// 结果 ['you are' => 666, 'i am' => 233]2、使用array_flip作为数组去重时数组的值...
2024-01-10php中PCRE2的使用
说明1、PHP7.3开始,PCRE2将作为新的正则引擎使用。2、需要将现有的正则表达式迁移到符合PCRE2的规则。这些规则比以前更具侵入性。特性相对后向引用 \g{+2}(等效于已存在的 \g{-2})PCRE2版本检查(?(VERSION>=x)...)(*NOTEMPTY)和(*NOTEMPTY_ATSTART)告知引擎勿返回空匹配(*NO_JIT) 禁用 JIT优化(*LIMIT_HEAP=d)限制堆大小为 d ...
2024-01-10pythonpprint.pformat()函数的使用
1、返回要打印的内容的文本字符串,这个字符串既易于阅读,也是语法上正确的Python代码。import pprintcats = [{'name':'Zophie','desc':'chubby'},{'name':'Pooka','desc':'fluffy'}]pprint.pformat(cats) fileObj = open('myCats.py','w')fileObj.write('cats = '+pprint.pformat(cats)+'\n')fileObj.close()2、如果来...
2024-01-10python使用shelve保存变量
1、用shelve模块,可以将Python中的变量保存到二进制的shelf文件中。这样,程序就可以从硬盘中恢复变量的数据。import shelveshelfFile = shelve.open('mydata')cats = ['Zonphie','Pooka','Simon']shelfFile['cats'] = catsshelfFile.close()2、shelf值不必用读模式或写模式打开,因为打开后,既能读又能写。shelfFile = shelve.open('myd...
2024-01-10