做题总结(2017.9.6)

做题总结(2017.9.6)_第1张图片

一、下面几个都会转化为0:

Number()
Number(0)
Number('')
Number('0')
Number(false)
Number(null)
Number([])
Number([0])

其他:

console.log(Number("")); //0
console.log(Number(null)); //0
console.log(Number(undefined)); //NaN
console.log(parseInt("")); //NaN
console.log(parseInt(null)); //NaN
console.log(parseInt(undefined)); //NaN
console.log(null == 0); //false
console.log(undefined == 0); //false

二、在ES6中提供了什么用于二进制的操作?

ArrayBuffer、TypeArray、DataView

三、请写出HTML5新增的布局标签 :

header、hgroup、nav、aside、section、article、footer、figure、menu

四、请使用CSS3画出一个线性渐变,渐变的方向是从右上角到左下角,起点颜色是从白色到黑色,请写出标准的写法 。



五、Doctype 严格模式与混杂模式的区别在哪里?

严格模式是浏览器根据web规范去显示页面,是一种要求严格的DTD,不允许使用任何表现层的语法;混杂模式是以一种向后兼容的方式去显示,说的透明点就是可以实现IE5.5以下版本浏览器的渲染模式。

不同浏览器对代码的解析模式不同,使用Doctype严格模式能使浏览器用采用同一标准进行解析,避免了混杂模式,造成不同浏览器不同的页面显示。
其他:
1)、 声明位于文档中的最前面,处于 标签之前。告知浏览器以何种模式来渲染文档。
2)、严格模式的排版和 JS 运作模式是 以该浏览器支持的最高标准运行。
3)、在混杂模式中,页面以宽松的向后兼容的方式显示。模拟老式浏览器的行为以防止站点无法工作。
4)、DOCTYPE不存在或格式不正确会导致文档以混杂模式呈现。

六、null和undefined的区别?

NULL是对象,undefined是一个数据类型

null是一个表示”无”的对象,转为数值时为0;undefined是一个表示”无”的原始值,转为数值时为NaN。
当声明的变量还未被初始化时,变量的默认值为undefined。
null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。
undefined表示”缺少值”,就是此处应该有一个值,但是还没有定义。

七、ECMAScript和javaScript的关系?

js是一种专为与网页交互而设计的脚本语言,由下列三个不同部分组成:
核心ECMAScript,提供核心语言功能;
文档对象模型(DOM),提供访问和操作网页内容的方法和接口;
浏览器对象模型(BOM),提供与浏览器交互的方法和接口。
JavaScript包括了核心ECMAScript。可以理解为:ECMAScript是js的一部分。

八、哪些操作会造成内存泄漏?

内存泄漏指任何对象在您不再拥有或需要它之后仍然存在。
会造成内存泄漏的操作:
1、闭包引起的内存泄漏;
2、意外的全局变量引起的内存泄漏;
3、没有清理的DOM元素引起的内存泄漏;
4、被遗忘的定时器或者回调函数;
5、子元素存在引用引起的内存泄漏;

九、简单陈述下你对MVC的理解

MVC模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。
Model(模型)表示应用程序核心(比如数据库记录列表);
View(视图)显示数据(数据库记录);
Controller(控制器)处理输入(写入数据库记录);
优点:
MVC 分层有助于管理复杂的应用程序;
MVC 分层同时也简化了分组开发;
MVC模式的这三个部分的职责非常明确,而且相互分离,因此每个部分都可以独立的改变而不影响其他部分,从而大大提高了应用的灵活性和重用性;

十、求 10000 以内 3 和 5 的倍数和,写出JavaScript实现函数

function fun(){  
    var sum=0;
    for(i=0;i<=10000;i++){
    if(i%3==0||i%5==0){
            sum+=i;
        }
    }
    return sum;  
}

十一、请编写一个JavaScript函数,实现清除数据中重复的元素

function remove(arr){
    var res=[];
    var len=temp.length;
    for(var i=0; i

你可能感兴趣的:(做题总结(2017.9.6))