发布时间:2023-02-06 15:30
1、对空数组、空字符串、空对象的真假判断
2、null、undefined、false相等关系
undefined和null与任何有意义的值比较都是返回false。但是null == undefined返回true
3、动态语言
动态语言:(弱类型语言)在运行是确定变量数据类型的语言。例如:JavaScript、PHP、Python
静态语言:(强类型语言)在编译的时候确定变量的数据类型,变量使用前必须先定义。例如:
C++、Java、C#。
这一题答错是是忽视了字符串拼接符优先级高于加法运算。所以正确的运算顺序为:‘hello’+i*2 = 'hello18’然后再进行 ‘hello18’ + 9 = ‘hello189’。
2、
虽然boolen( [] )的运算结果为true。但是 [] 并不等于true。NaN与任何值都不相等,包括自己
类似的运算如下:
3、
此题的a变量会提升到它自己作用域的头部。而if语句中var定义的变量算是全局变量。所以会提升到if语句前面去定义a。上面的代码相当于下面的代码:
var a;
if(!'a' in window){
a=1;
}
alert(a);
由于变量提升,a在if外面有了定义。所以window对象有了a属性。所以程序执行不会进入if里面。所以输出的a是undefined。
4、
记住特殊的事件 IE 中的attachEvent中的this指向全局对象window
1、
这题中,var fun = user.getCont 相当于是var fun = function(){return this.count}
2、
普通函数 do 也可以用new调用。所以x 的构造函数是A.do().能在A里面找到do方法,就不会到原型对象里查找。