您现在的位置是:首页 > 唯美句子

前端系列-Javascript方面

作者:亙句时间:2024-05-13 10:06:22分类:唯美句子

简介  文章浏览阅读813次,点赞19次,收藏18次。数据类信、运算、对象、Function、继承、闭包、作用域、原型链、Ajax、Dom、Bom、内存泄露、跨域、异步装载、模版引擎、前端MVC、路由、模块化、Canvas、ECMAScript。作用域的作用:是保证执

点击全文阅读

1、什么是闭包以及特性、好处、坏处、使用场景?

      闭包就是能够读取其他函数内部变量的函数。

      特性:1、函数内部可以嵌套函数

                 2、内部函数可以直接访问外部函数的参数和变量

                 3、参数和变量不会被垃圾回收机制回收

      使用场景:数据封装和私有化、模块模式

      使用闭包就是为了设置私有变量和方法,

      好处:能够实现封装和缓存

      坏处:就是内存消耗,使用不当可能会造成内存溢出。

2、谈谈js中变量和函数声明的提升?

      变量和函数声明的提升会被提升到最顶部去执行

      函数的提升高于变量的提升

      如果在函数内部用var声明了与外部相同的变量,则不向下寻找

      匿名函数不会被提升

      不同块中互不影响

3、说说this对象的理解?

      this总是指向直接调用者;

      如果有new关键字,则指向new出来的那个对象;

      在事件中,this指向触发这个事件的对象,特殊的是:在IE中的attachEvent中的this总是指向全局对象window。

4、事件模型的理解?

      冒泡型事件:当使用冒泡型事件时,子级元素先触发,父级元素后触发。

      捕获型事件:当使用捕获型事件时,父级元素先触发,子级元素后触发。

5、说说栈和堆的区别?

     栈内存:存储的都是局部变量,后进先出,栈内存的更新速度很快,因为局部变量的声明周期都很短;

     堆内存:存储的都是数组和对象,堆里面的实体不会被释放,但是会被当成垃圾,java有垃圾回收机制不定时地收取;

6、map和forEach的区别?

      forEach是最基本的循环,默认有三个参数:array、item、index

      map的用法和forEach基本一致,不同的是它会返回一个数组,所以callback需要有return值,如果没有,会返回undefined;

7、JS数组去重?

      new Set()、indexOf、利用includes、sort(不推荐)

8、js定义类的四种方法?

      工厂方法、构造函数方法、原型方法、组合使用构造函数和原型方法。

9、js实现继承的三种方式?

      借用构造函数法、对象冒充、组合继承

10、对原生js的了解程度?

        数据类信、运算、对象、Function、继承、闭包、作用域、原型链、Ajax、Dom、Bom、内存泄露、跨域、异步装载、模版引擎、前端MVC、路由、模块化、Canvas、ECMAScript

11、谈一谈你对“函数式编程”的理解?

        简单来说,函数式编

点击全文阅读

郑重声明:

本站所有活动均为互联网所得,如有侵权请联系本站删除处理

我来说两句