js基础面试

#js面试
##几个面试题

  • js中使用typeof能得到哪些类型?
    值类型、引用类型
    typeof只能区分值类型和函数,其它类型一律为Object
    强制类型转换:
    1、字符串拼接
    2、==
    3.、if语句
    4、逻辑运算 &&前面如果是true继续走后面、||前面是false继续走后面、!!双非转化
  • == 和 ===
    jquery推荐写法:
    null或undefined使用 ==其它使用 ===
    obj.a == null相当于 obj.a === null||obj.a===undefined
  • js有哪些内置构造函数 类似于java中内置类
    Object Array Boolean Number String Function Date RegExp Error
    Math是内置对象
  • 实现一个模块加载器,实现类似require.js功能
  • 实现数组随机排序
  • 如何理解JSON
    类似于Math也是内置js对象只有两个API parse stringify

原型和原型链

题目:
  1. 如何判断变量是数组类型
    instance of
  2. 写一个原型链继承的例子

  1. new一个对象的过程
    创建一个新对象、this指向这个新对象、执行代码及对this赋值、返回this
  2. zepto(或其他框架)如何使用原型链
    阅读zepto源码
    但不能埋头苦钻
知识点:
  • 构造函数
    new过程:this 变成空对象,默认return this 把空对象负值给对象名
  • 构造函数扩展
    {} [] function 的构造函数 Object(),Array(),Function()
    function a() 相当于 var a = new Function()
  • 原型规则和实例
    5条原型规则:
    1、所有的引用类型,都具有对象特性,即可自由扩展属性(除了null之外)
    2、都有__proto__属性(隐式原型),指向一个普通对象
    3、所有的函数,都有个一个prototype属性(显示原型),属性值也是一个普通对象
    4、所有的引用类型,__proto__属性指向它构造函数的“prototype”属性值
    5、当试图得到一个对象的某个属性时,如果这个对象本身没有这个属性,那么去找它的__proto__中去找。
    补充:
var item 
for(item in f){
	//高级浏览器中已经在for in中屏蔽了来自原型的属性
	//但是这里建议大家还是加上这个判断以保证程序的健壮性
	if(f.hasOwnProperty(item)){
		console.log(item)
    }
}
  • 原型链
f.totring()  //要去f.__proto__.__proto__中去查找

在这里插入图片描述

  • instanceof
    判断一个函数是否是一个变量的构造函数
    判断原理是对象的隐式原型一层一层能否找到对应构造函数的显示原型
    变量 instanceof Array
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值