//1、try catch finally中的return
var n=1;
function fun(){
try{
n++;
m++;//报错
return n;
}catch(err){
n++;
return n;
}finally{
n++;
//return n;
}
}
console.log(fun());//
console.log(n);//
/*作用域和作用域链*/
var n=10;
function fun(n){
n--;
console.log(n);
}
console.log(fun(n)); //9
console.log(n); //10
 /*new Function*/
var i=5;
function fun(){
var i=4;
//var f1=new Function("console.log(i)");
var f1=function(){console.log(i);};
console.log(f1);
f1();
}
fun();//
 /*callback 与 this*/
var o={
n:1,
fun:function(){
var self=this;//留住this
console.log(self.n++);
setTimeout(function(){
self.fun();
},1000);
}
}
o.fun();//this-->o
 /*DOM中的闭包问题*/
function fun(){
var li=document.getXX...;
btn.onclick=function(){
li.xx=xx;
}//li将永远无法释放,即使刷新页面也不行
}
 /*引用类型的共有属性*/
function Student(){}
Student.prototype.arr=[];
var lilei=new Student();
var hmm=new Student();
lilei.arr.push(1);//this[this.length]=1
hmm.arr[1]=2;
console.log(lilei.arr);//[1,2]
console.log(hmm.arr);//[1,2]
 /*继承父类型共有方法*/
function Student(){}
Student.prototype=[];
var lilei=new Student();
lilei.push(1);//this[this.length]=value;
var hmm=new Student();
hmm.push(2);
console.log(lilei);
console.log(hmm);
 /*私有属性,公有属性*/
function Student(){
var prop="私有属性";//私有属性
this.prop="公有属性"; //公有属性
var fun=function(){//私有方法
console.log("调用私有方法");
console.log(prop);
}
this.fun=function(){//公有方法
console.log("调用公有方法");
fun();//this-->window
console.log(prop);
console.log(this.prop);
}
}
var lilei=new Student();
lilei.fun();//公有
 //阻碍事件
for(var i=0;i<3;i++){
setTimeout(function(){
console.log(i);
},10)
}
alert("hello");
 function MyObj(){
this.p.pid++;
}
MyObj.prototype.p={"pid":0};
MyObj.prototype.getNum=function(num){
return this.p.pid+num;
}
var obj1=new MyObj();
var obj2=new MyObj(); //p.pid=2
console.log(obj1.getNum(1)+obj2.getNum(2));//
 /**/
function fun(n,o){
console.log(o);
return {fun:function(m){
return fun(m,n);
}
}
}
var a=fun(0);//undefined
//a-->{fun:function(m){return fun(m,n)}}
a.fun(1); a.fun(2); a.fun(3); //0 0 0
var b=fun(0).fun(1).fun(2).fun(3); //0 1 2
var c=fun(0).fun(1); c.fun(2);c.fun(3); //0 1 1

  

JAVASCRIPT中经典面试题的更多相关文章

  1. JavaScript之经典面试题

    1.作用域经典面试题 var num = 123; // f1函数写好了,作用域就定下来了,也就是作用域链定下来了 // f1函数作用域链: f1函数作用域 ==> 全局作用域 function ...

  2. JavaScript中经典方法

    jQuery()通过name名称获取当前name中value数组 /** 获取input中name属性相同的 value数组 */ function my_array_name(m){ var val ...

  3. javascript中经典继承的兼容写法

    function create(obj) { // 2.1 判断浏览器支持不支持 Object.create // 如果支持,直接使用 Object.create // 如果不支持,自己实现 if(O ...

  4. JavaScript经典面试题(二)

    前言: 近年来T行业就业者越来越多,有关于编程行业的高薪工作也变得越来越难找,竞争力越来越大,想要在众多的应聘者当中脱颖而出,面试题和笔试题一定要多加研究和琢磨,以下记录的是自己的面试过程之中遇到的一 ...

  5. 学习Javascript闭包(Closure)及几个经典面试题理解

    今天遇到一个面试题,结果让我百思不得其解.后来在查阅了各种文档后,理清了来龙去脉.让我们先来看看这道题: function Foo( ){ var i = 0; return function( ){ ...

  6. 深入浅出经典面试题:从浏览器中输入URL到页面加载发生了什么 - Part 3

    备注: 因为文章太长,所以将它分为三部分,本文是第三部分. 第一部分:深入浅出经典面试题:从浏览器中输入URL到页面加载发生了什么 - Part 1 第二部分:深入浅出经典面试题:从浏览器中输入URL ...

  7. 【ASP.NET Core】EF Core - “影子属性” 深入浅出经典面试题:从浏览器中输入URL到页面加载发生了什么 - Part 1

    [ASP.NET Core]EF Core - “影子属性”   有朋友说老周近来博客更新较慢,确实有些慢,因为有些 bug 要研究,另外就是老周把部分内容转到直播上面,所以写博客的内容减少了一点. ...

  8. JavaScript设计模式经典-面向对象中六大原则

    作者 | Jeskson来源 | 达达前端小酒馆 1 主要学习JavaScript中的六大原则.那么六大原则还记得是什么了吗?六大原则指:单一职责原则(SRP),开放封闭原则(OCP),里氏替换原则( ...

  9. 20道JavaScript经典面试题

    该篇文章整理了一些前端经典面试题,附带详解,涉及到JavaScript多方面知识点,满满都是干货-建议收藏阅读 前言 如果这篇文章有帮助到你,️关注+点赞️鼓励一下作者,文章公众号首发,关注 前端南玖 ...

随机推荐

  1. 深入理解PHP内核(十二)函数-函数的定义、传参及返回值

    原文链接:http://www.orlion.ga/344/ 一.函数的定义 用户函数的定义从function 关键字开始,如下 function foo($var) {    echo $var; ...

  2. 【目录】Matlab和C#混合编程文章目录

    本博客所有文章分类的总目录链接:[总目录]本博客博文总目录-实时更新 1.Matlab和C#混合编程文章目录 9.接触Matlab10年后的一个总结,随时使用Matlab要掌握的一些要点 8.国内第一 ...

  3. Arctext.js - 基于 CSS3 & jQuery 的文本弯曲效果

    Arctext.js 是基于 Lettering.js 的文本旋转插件,根据设置的旋转半径准确计算每个字母的旋转弧度并均匀分布.虽然 CSS3 也能够实现字符旋转效果,但是要让安排每个字母都沿着弯曲路 ...

  4. 聚合索引(clustered index) / 非聚合索引(nonclustered index)

    以下我面试经常问的2道题..尤其针对觉得自己SQL SERVER 还不错的同志.. 呵呵 很难有人答得好.. 各位在我收集每个人擅长的东西时,大部分都把SQL SERVER 标为Expert,看看是否 ...

  5. C#语法糖(Csharp Syntactic sugar)大汇总

    首先需要声明的是"语法糖"这个词绝非贬义词,它可以给我带来方便,是一种便捷的写法,编译器会帮我们做转换:而且可以提高开发编码的效率,在性能上也不会带来损失.这让java开发人员羡慕 ...

  6. 实现ASP.NET无刷新下载并提示下载完成

    先上代码,后面再进行说明. 以下是前端代码: <%@ Page Language="C#" AutoEventWireup="true" CodeBehi ...

  7. 地图定位IOS8之后的定位

    从ios8开始,苹果进一步加强了对用户隐私的保护. 当app想要访问用户的隐私信息时  系统不再自动弹出一个对话框让用户授权 解决方法: (1)调用ios8.0的API 主动请求用户授权 - (voi ...

  8. Get sdcard directory by adb

    解决方案: adb shell echo $EXTERNAL_STORAGE  I am making an application, which pulls files(Saved by andro ...

  9. C#常用字符串加解密方法封装

    C#中常用的字符串加密.解密方法封装,包含只加密但不解密的方法.收藏起来备用. //方法一 //须添加对System.Web的引用 //using System.Web.Security; /// & ...

  10. ASP.NET 的IP帮助类

    个人网站地址: https://www.lesg.cn/netdaima/net/2016-239.html ASP.NET 的IP帮助类 在Web开发中会出现需要调用客户IP的方法: 一般调用方法就 ...