1、只能输入‘零’和‘非零开头’的数字:

^(0|[1-9][1-9]*)$
[1-9]匹配1-9


$:匹配字符串结尾

 

 2、 window.setTimeout(checkState(), 10000); //立即被调用 

     window.setTimeout(checkState, 10000); // 10s后被调用 。。。

   window.setTimeout("checkState()", 10000); //10s后被调用 注意和第一个的区别 有引号

 

3、AngularJS是单例对象或函数

4、JavaScript中有五种基本数据类型(也叫做简单数据类型)分别为:undefined、null、bolean、number、string;另外还含有一种复杂的数据类型:object.

5、 getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。 getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。 getYear() 从 Date 对象以四位数字返回年份。 getTime() 返回 1970 年 1 月 1 日至今的毫秒数。

 

6、看(2)
setTimeout()方法接收两个参数,第一个参数可以是包含JavaScript代码的字符串,或者是一个函数。第二个参数表示等待多长时间的毫秒数将当前任务添加到队列中。

所以:
setTimeout(“go()”, 10);  //等待10毫秒执行go函数
setTimeout(go, 10);       //等待10毫秒执行go函数
setTimeout(go(), 10);    //立即执行go函数
 
7、jQuery

toggleClass() 对设置或移除被选元素的一个或多个类进行切换。

该方法检查每个元素中指定的类。如果不存在则添加类,如果已设置则删除之。这就是所谓的切换效果。

8、

var arr = [1,3,10,2,20];

var result = arr.map(value=>value < 10);

console.log(result);

关系操作符小于(<)返回的是布尔值,所以map的每一项返回的都是布尔值,result最终结果是[true, true, false, true, false],map的结果是对数组中每一个元素调用一次提供的函数后的返回值

 

9、函数提升:预变量,可以直接在函数声明之前调用该函数,并能成功执行它。

 

 

      变量提升:变量作用域指变量起作用的范围。变量分为全局变量和局部变量。全局变量在全局都拥有定义;而局部变量只能在函数内有效。

在函数体内,同名的局部变量或者参数的优先级会高于全局变量。也就是说,如果函数内存在和全局变量同名的局部变量或者参数,那么全局变量将会被局部变量覆盖。
所有不使用var定义的变量都视为全局变量

 

 

虽然return 语句可以终止函数,但是return语句后如果有变量和函数声明,仍然存在变量提升和函数提升

1.函数声明提升优先级高于变量声明提升
2.提升就是声明(变量/函数)提至当前作用域的最顶部,赋值语句留在原地,
3.函数创建有3个形式,函数声明和函数表达式 以及 new Function构造函数。
4.只有函数声明才有函数提升。...其实2个都有提升,表达式提升的是变量了。

 

 

10、

 

 实例与原型之间的关系是松散关系,实例中有一个指针,指向原型,所以对原型属性和方法的修改,是可以立刻反映到所有实例上的,所以A.n++,修改了原型的数据属性n,可以立刻体现到实例C上。

在查找 b.n 是首先查找 b 对象自身有没有 n 属性,如果没有会去原型(prototype)上查找

当执行 var b = new B() 时,函数内部 this.n=9999(此时this指向b) 返回b对象,b对象有自身的n属性,所以返回 9999
console.log(c.n);
同理
当执行 var c = new C() 时,c对象没有自身的n属性,向上查找,找到原型 (prototype)上的 n 属性,因为 A.n++(此时对象A中的n为4400), 所以返回4400

 

11、

 

 

 

 

 test就是匹配的意思

A.这算是完全匹配了,^a表示以a开头,c$表示以c结尾,中间再夹个b
B."."表示匹配除换行符的任意字符,"x(?=y)"匹配'x'仅仅当'x'后面跟着'y'.这种叫做先行断言。所以这里可以理解为:
1.当没有换行符时,只要字符前面是三的倍数/.../,并且后面跟有字符/(?=.)/,就可匹配,如1234,abcdefg,234wewrwwr(下划线处为匹配项)
2.有换行符时,每一行要重新匹配,即字符长度独立,从0开始(下划线处为匹配项)
121sfs12
12sd
323fd
C.[ab]表示a或b {2}表示长度为2  [^defgh]表示非defgh的字符,所以可匹配的有,aac,bbc,abc,abcd等,注意这里匹配长度为3
D."*"表示0或者多个字符,这里可匹配空,或者括号内任意字符

 

 

 

 

posted on 2022-10-27 14:26  Tommy011  阅读(42)  评论(0)    收藏  举报