level-16

2016-03-23  本文已影响118人  lurker

JS基础知识

1.CSS和JS在网页中的放置顺序是怎样的?##


解释白屏和FOUC##

浏览器的白屏与无样式内容闪烁(FOUC),是由于浏览器加载与显示页面方式不同造成的:

解决方式:使用link标签将样式表放置在head标签中。

IE————会出现白屏现象


FireFox 当把样式表放在页面底部时,会遇到FOUC问题,因为FF为了用户体验,对所有都是对页面中的组件逐步呈现。

IE浏览器


async和defer的作用是什么?有什么区别

参考[defer和async的区别][2]


简述网页的渲染机制
渲染一个Web页面,浏览器执行的所有步骤如下:


JavaScript 定义了几种数据类型? 哪些是简单类型?哪些是复杂类型?
在JavaScript中,有5种基本数据类型和1种复杂数据类型,可以使用typeof来检测是什么数据类型。
基本数据类型:

复杂数据类型:

简单数据类型:

特殊数据类型:


NaN、undefined、null分别代表什么?


typeof和instanceof的作用和区别?
instanceof 和typeof都能用来判断一个变量是否为空或是什么类型的变量。

谈到instanceof 我们要多插入一个问题,就是 function 的 arguments,我们大家也许都认为 arguments 是一个 Array,但如果使用 instaceof 去测试会发现 arguments 不是一个 Array 对象,尽管看起来很像。

代码
1.完成如下代码判断一个变量是否是数字、字符串、布尔、函数

function isNumber(el){
     return typeof el==="number";
}
function isString(el){
    return typeof el==="string";
}
function isBoolean(el){
   return typeof el==="boolean";
}
function isFunction(el){
    return typeof el==="function";
}

var a = 2,
    b = "jirengu",
    c = false;
alert( isNumber(a) );  //true
alert( isString(a) );  //false
alert( isString(b) );  //true
alert( isBoolean(c) ); //true
alert( isFunction(a)); //false
alert( isFunction( isNumber ) ); //true

2以下代码的输出结果是?(难度**)

console.log(1+1); //2   number
console.log("2"+"4"); //24   string
console.log(2+"4"); //24   string
console.log(+new Date());//1458661115766  number
console.log(+"4");//4 string

3.以下代码的输出结果是? (难度***)

var a = 1;
a+++a;//输出结果为3

typeof a+2;//输出结果为number2

4.遍历数组,把数组里的打印数组每一项的平方 (难度**)

var arr = [3,4,5]
for(var i=0;i<arr.length;i++){
           console.log(arr[i]*arr[i]);
}
// todo..
// 输出 9, 16, 25 

5.遍历 JSON, 打印里面的值 (难度**)

var obj = {
  name: 'hunger',
  sex: 'male',
  age: 28
}
for(vari in obj){
            console.log(i+":"+obj[i]+";")
        }

6.下面代码的输出是? 为什么

console.log(a);//undefined  
var a = 1;
console.log(a);//1
console.log(b);//报错,因为变量b未定义。
第一个显示为undefinde 是因为JS的变量提升。相当于
var a;
console.log(a);
var a = 1;
console.log(a);
console.log(b);

变量提升,就是把变量提升提到函数的top的地方。我么需要说明的是,变量提升 只是提升变量的声明,并不会把赋值也提升上来。

@hunger

上一篇 下一篇

猜你喜欢

热点阅读