JS为什么这个exec返回null呢?test都返回true了?而exec为null?

JavaScript018

JS为什么这个exec返回null呢?test都返回true了?而exec为null?,第1张

如果你是先执行test(),然后再执行exec(),那么就确实如你所说,test()返回true,而exec则返回null,因为这是算作两次查询,test()查询了一次,然后exec就是第二次查询了,这时候已经没有查询结果了,所以返回null。

如果不执行test(),直接exec(),你就会发现有返回结果了!

所以,正常情况下不要把test()和exec()联用,如果出于测试目的,那么测试后要把test()删掉!

一、execjs不支持eval函数的运行,需要更换eval为return

二、execjs的call必须调用函数,可以在需要调用的js外添加function run(){}

三、execjs调用的函数内部只能运行一个函数

1、最常用的截取方法就是substring(),参数就是开始截取的位置。

2、输入的参数是3,那么就是截取第三个位置的字符后面的所有字符。

3、substring中可以输入两个参数,第一个参数就是开始截取的位置,第二个参数就是截取结束的位置。

4、如图将第三个个字符至第六个字符之间的字符。

5、还有一种方法就是substr(),同样可以输入两个参数,第一个参数是字符串开始截取的位置,第二个参数就是字符串截取的长度。

6、给substr输入的两个参数为3和6,意思就是从第三个字符开始,往后截取6个长度的字符。

7、substr和substring两个方法如果都只输入一个参数,那么两个方法的效果是一样的。