作用域面试题:

1.

fn()
function fn () {
console.log(12)
}
var as = function () {
console.log(45)
}

2.

var a = 12;
function fn () {
console.log(a)
var a = 45;
console.log(a)
}
fn()

3.

var a = 12;
function fn () {
console.log(a)
a = 45;
console.log(a)
}
fn()

4.

function fn () {
console.log(11)
function ff () {
console.log(22)
}
ff()
}
fn()

5.

function fn () {
console.log(5)
fn()
}
fn()

6.

function fn () {
console.log(12)
}
var as = fn()
console.log(as)

7.

function fn () {
console.log(12);
return 45;
console.log(456)
}
var as = fn()

8.

var a = 12;
function fn () {
console.log(a);
return 4;
var a = 45;
}
fn()

9.

var a = 45;
function fn () {
console.log(a)
}
fn()

10.

var a = 45;
function fn (a) {
console.log(a)
}
fn(5)

11.

var a = 123;
function fun () {
alert(a);
}
fun()

12.

var a = 123;
function fun () {
alert(a);
var a = 456;
}
fun();
alert(a);

13.

var a = 123;
function fun () {
alert(a);
a = 456;
}
fun()
alert(a)

14.

var a = 123;
function fun (a) {
alert(a)
a = 456;
}
fun()
alert(a)

15.

var a = 123;
function fun (a) {
alert(a)
a = 456
}
fun()
alert(a)
 

16.

function makeNoSense (x) {
this.x = x;
}
makeNoSense(5);
console.log(x);
function test () {
this.x = 1;
alert(this.x);
}
test();
 
 

This的面试题

1.

var name = '222';
var a = {
name : '111',
say : function () {
console.log(this.name)
}
}
var fun = a.say;
fun() //???
a.say() //???
var b = {
name : '333',
say : function (fun) {
fun();
}
}
b.say(a.say); //???
b.say = a.say;
b.say() //???
 

2.

var val = 1
var obj = {
val : 2,
dbl : function() {
var val = 45;
console.log(this); //指向谁?
this.val *= 2;
console.log(this.val); //??
console.log(val); //??
}
}
var fn = obj.dbl
fn()

3.

var x = 12;
function test() {
console.log(this.x)
}
test() //??

4.

var x = 12;
function test() {
console.log(this.x)
}
var obj={
x:45,
ss:test
}
obj.ss() //??

5.

var x = 12;
function test() {
console.log(this.x)
}
var obj = {
x:45,
ss:function(){
console.log(this)
test()
}
}
obj.ss() //??

6.

var val = 1
var obj = {
val : 2,
dbl : function() {
// var val = 45;
console.log(this); // 指向谁
this.val *= 2;
console.log(this.val); // ???
console.log(val); // ???
}
}
var ff = obj.dbl()

 

面试题集锦;有关作用域和this的指向的更多相关文章

  1. 经典的Java基础面试题集锦

    经典的Java基础面试题集锦,欢迎收藏和分享. 问题:如果main方法被声明为private会怎样? 答案:能正常编译,但运行的时候会提示”main方法不是public的”. 问题:Java里的传引用 ...

  2. 2016最新Java笔试题集锦

    更新时间:2015-08-13         来源:网络         投诉删除 [看准网(Kanzhun.com)]笔试题目频道小编搜集的范文“2016最新Java笔试题集锦”,供大家阅读参考, ...

  3. Java笔试题集锦

    Java笔试题集锦 1.MVC的各个部分都有那些技术来实现?怎样实现? 答:MVC是Model-View-Controller的简写."Model" 代表的是应用的业务逻辑(通过J ...

  4. Mybatis执行流程浅析(附深度文章推荐&面试题集锦)

    首先推荐一个简单的Mybatis原理视频教程,可以作为入门教程进行学习:点我 (该教程讲解的是如何手写简易版Mybatis) 执行流程的理解 理解Mybatis的简单流程后自己手写一个,可以解决百分之 ...

  5. C/C++面试题集锦(一)

    C/C++面试题集锦(一) */--> C/C++面试题集锦(一) 在类的头文件中进行声明然后在定义文件中实现有什么意义? 一方面使类的实现只编译一次,提高编译效率:另一方面可以实现类的接口和实 ...

  6. 【Android面试】Android面试题集锦 (陆续更新)(最新2012-6-18) eoe上看到的

    ===============eoeAndroid社区推荐:======================= 1.Android开发新浪面试题[开发者必看哦]下载地址 http://www.eoeand ...

  7. J2EE面试题集锦(附答案)

    转自:http://blog.sina.com.cn/s/blog_4e8be0590100fbb8.html J2EE面试题集锦(附答案)一.基础问答 1.下面哪些类可以被继承? java.lang ...

  8. J2EE面试题集锦_

    一.基础问答 不能被继承的类有[Long  Double  Float  Short  Void  Class  Math  String] 他们都被final修饰         类可以被继承[Th ...

  9. Redis面试题集锦(精选)

    1.什么是 Redis?简述它的优缺点? Redis的全称是:Remote Dictionary.Server,本质上是一个Key-Value 类型的内存数据库,很像memcached,整个数据库统统 ...

  10. RabbitMQ面试题集锦(精选)(另附思维导图)

    1.使用RabbitMQ有什么好处? 1.解耦,系统A在代码中直接调用系统B和系统C的代码,如果将来D系统接入,系统A还需要修改代码,过于麻烦! 2.异步,将消息写入消息队列,非必要的业务逻辑以异步的 ...

随机推荐

  1. KVM虚拟化技术(一)虚拟化简介

    一 .虚拟化 虚拟化是指计算机元件在虚拟的基础上而不是真实的基础上运行.虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程.CPU的虚拟化技术可以单CPU模 拟多CPU并行,允许一个平台同时运行多个 ...

  2. 吴裕雄 01-mysql管理

    SHOW DATABASES; update user set authentication_string = password("123456") where user='roo ...

  3. Docker 批量启动

    批量配置IP for i in `docker ps -a|awk 'NR>1 {print $NF}'`;do IP=`echo $i|awk -F_ '{print "192.16 ...

  4. tensorflow 高级api使用分布式之配置

    """Constructor. Sets the properties `cluster_spec`, `is_chief`, `master` (if `None` i ...

  5. vue 路由meta作用及在路由中添加props作用

    vue路由meta:有利于我们处理seo的东西,我们在html中加入meta标签,就是有利于处理seo的东西,搜索引擎 在路由中传参是通过/:id传参代码如下: import Login from ' ...

  6. php原样输出被编译过的html(适用于一些保存编辑器的内容)

    有时候有些编辑器写进数据库时尖括号或双引号被编译过,这时候输入来就是处理一下,不然得不到原样的 输入用  html_entity_decode($content)就可以了,有些直接存完整html的,输 ...

  7. css-background-image 背景图片太大或太小

    .zoomImage {                background-image:url(images/yuantiao.jpg);                background-rep ...

  8. ezmorph将一种对象转换成另外一种对象

    EZMorph支持原始数据类型(Primitive),对象(Object),多维数组转换与DynaBeans的转换.兼容JDK1.3.1,整个类库大小只有76K左右. 在Java EE开发常用的str ...

  9. Java Runtime

    Runtime 类代表着Java程序的运行时环境,构造方法 private Runtime(){},采用单例模式,一个jvm只有一个Runtime实例对象,该类会被自动创建,我们可以通过Runtime ...

  10. 调css时候,设置margin-left没有效果

    调css时候,如果设置margin-left没有效果,可能是span不是块元素.设置display:block;即可.