Javascript

js相关面试问题及解答(1)

本文主要是介绍js相关面试问题及解答(1),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

js基本数据类型有哪些?

  • Number
  • String
  • Boolean
  • Undefined
  • Null

Ajax如何使用?

创建XMLHttpRequest对象
        语法:let xhr = new XMLHttpRequest();
向服务器发送请求
        get方式:调用open方法,参数为(请求方式,请求地址+请求参数,是否异步)
                        调用send()方法
        post方式:调用open方法,参数为(请求方式,请求地址,是否异步)
                         添加请求头:xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
                        调用send(请求参数)方法

接收服务器响应
        使用onreadystatechange事件:
        写法:xhr.onreadystatechange=function(){
        if(xhr.readyState==4&&xhr.status==200){
        fun(xhr.responseText);
        }


如何判断一个数据是NaN?

        NaN不是一个数字且数据类型为Number,而且不等于自身

        利用NaN不等于唯一不等于自身的特点:
        写法:funcion isNaN(n){
        if(n!=n){
        return true;
        }else{
        return false
        }}


Null与Undefined区别

相同点:在if判断语句中,都会转换为false

不同点:转换为Number类型,null为0,undefined为NaN
              null表示一个值定义了,但是赋了空值;undefined表示定义了,没有赋值


闭包函数的特性?

        闭包可以理解成定义在一个函数内部的函数,当其中一个内部函数在包含他们的外部函数之外被调用时,就会形成闭包。

写法:

let fun = (function(){
var count=0;
return function(){
return ++count;
}})()

闭包的本质:

        外层函数嵌套一个内层函数,在子函数中操作局部变量,将子函数作为父函数的返回值,通过一个全局变量绑定父函数的返回值,从而延长了子函数以及局部变量的生命周期,实现了可以在函数外部操作函数内部的局部变量

特点:

  • 函数嵌套函数
  • 函数内部可以引用外部的参数和变量
  • 参数和变量不会被垃圾回收机制回收

用处:

  • 读取函数内部的变量;
  • 这些变量的值始终保持在内存中,不会在外层函数调用后被自动清除

缺点:

  • 会造成内存泄露
这篇关于js相关面试问题及解答(1)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!