JS 中 reduce()方法及使用详解

1.基本概念

reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值。

reduce 为数组中的每一个元素依次执行回调函数,不包括数组中被删除或从未被赋值的元素,接受四个参数:初始值(或者上一次回调函数的返回值),当前元素值,当前索引,调用 reduce 的数组。

语法:

arr.reduce(callback,[initialValue])
  • callback (执行数组中每个值的函数,包含四个参数)
    • previousValue (上一次调用回调返回的值,或者是提供的初始值(initial[……]

      继续阅读

Jenkins 关闭跨站请求伪造保护(CSRF)

我使用的是centos7+Jenkins 2.387.2API,远程调用API,报错403。

根据网上的方法在/etc/sysconfig/jenkins以及/etc/init.d/jenkins中添加

-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true
均无法奏效。

解决办法:

执行命令

systemctl status jenkins
查找到jenkins的启动文件

 

执行命令:

vi /usr/lib/syste[……]

继续阅读

PHP pcntl多进程实例

pcntl是一个可以利用操作系统的fork系统调用在PHP中实现多线程的进程控制扩展,当使用fork系统调用后执行的代码将会是并行的。pcntl仅适用于Linux平台的CLI模式下使用。

PHP官方没有提供多线程的扩展,在pecl中有一个pthread扩展提供了多线程的特性,此版本仅在线程安全版本中可用。

创建子进程pcntl_fork

int pcntl_fork(void)

pcntl_fork函数执行时会在当前进程下创建一个子进程,子进程与父进程在PID和PPID上会不同。

子进程会复制父进程中所有的数据、代码、状态等信息。当使用pcntl_fork成功创建子[……]

继续阅读

反射快速入门 _

反射就是通过字节码文件获取类的成员变量、构造方法和成员方法的所有信息。
利用反射,我们可以获取成员变量的修饰符、名字、类型、取值。我们可以获取构造方法的名字、形参,并利用通过反射获取的构造方法创建对象。我们可以获取成员方法的修饰符、名字、形参、返回值、抛出的异常、注解,并运行通过反射获取的方法。

2304252-20240718195953917-598211124

比如idea中的自动提示就是通过反射获取的,idea通过反射获取该对象的所有能调用的方法,并将它显示出来,又比如idea中函数的形参提示也是通过反射获取的。

反射是通过字节码文件对象获取成员变量、成员方法、构造方法的所有信息,所以,我们先要获取字节码文件对象,再去从字节码文件对象[……]

继续阅读