• 面试题目


     
     
    JavaScript中if语句求值其实使用eval函数,eval(function f(){}) 返回 function f(){} 也就是 true。
     
    写一个mul函数,使用方法如下。
    console.log(mul(2)(3)(4)); // output : 24 
    console.log(mul(4)(3)(4)); // output : 48
    答案直接给出:
     
     
    怎么判断一个object是否是数组(array)?
    方法1
    使用 Object.prototype.toString 来判断是否是数组
     
     
     
     
    这里使用call来使 toString 中 this 指向 obj。进而完成判断
     
    方法二
    使用 原型链 来完成判断
     
     
     
     
    基本思想是利用 实例如果是某个构造函数构造出来的那么 它的 __proto__是指向构造函数的 prototype属性。
     
     
    什么是 undefined x 1 ?
     
    在chrome下执行如下代码,我们就可以看到undefined x 1的身影。
     
     
     
     
      注意:delete操作符并不是影响数组的长度
    当我们使用 delete 操作符删除一个数组中的元素,这个元素的位置就会变成一个占位符。打印出来就是undefined x 1
    注意如果我们使用trees[3] === 'undefined × 1'返回的是 false。因为它仅仅是一种打印表示,并不是值变为undefined x 1
     
     
    下面代码输出什么?
     
     
     
     
    输出是 undefined。js中赋值操作结合律是右至左的 ,即从最右边开始计算值赋值给左边的变量。
     
    什么是 instanceof 操作符?下面代码输出什么?
     

    下面代码输出什么?

     

     
     
    Arguments对象是活动对象的一个属性,它包括如下属性: callee — 指向当前函数的引用
    length — 真正传递的参数个数
    properties-indexes (字符串类型的整数) 属性的值就是函数的参数值(按参数列表从左到右排列)。 properties-indexes内部元素的个数等于arguments.length. properties-indexes 的值和实际传递进来的参数之间是共享的。
    这个共享其实不是真正的共享一个内存地址,而是2个不同的内存地址,使用JavaScript引擎来保证2个值是随时一样的,当然这也有一个前提,那就是这个索引值要小于你传入的参数个数,也就是说如果你只传入2个参数,而还继续使用arguments[2]赋值的话,就会不一致;
     
     
     
     
     

    <wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">

  • 相关阅读:
    Could not autowire. No beans of 'TbItemMapper' type found. less... (Ctrl+F1) Checks autowiring prob
    使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化
    IntelliJ IDEA Ultimate 下载与安装
    Android Studio 下载与安装配置
    MySQL Community Server 8.0.11下载与安装配置
    Eclipse EE下载安装与配置
    Tomcat 下载安装与配置
    篮球术语
    GPU对数据的操作不可累加
    经典把妹桥段:Flower dance开头对话
  • 原文地址:https://www.cnblogs.com/paopaolee/p/8629910.html
Copyright © 2020-2023  润新知