美文网首页
前端劝退题(二)

前端劝退题(二)

作者: 阿羡吖 | 来源:发表于2020-12-25 20:22 被阅读0次
var a ={n:1};
var b =a;
a.x = a = {n:2};
console.log(a.x);  //undefined
console.log(b.x);  //{n:2}
var a = {n:1};//创建对象{n:1},赋值给a
var b = a;//b引用a的对象,实际上此时内存只有一个对象。变量a,b同时指向这个对象
a.x = a = {n:2};//此时将这个对象的键值x赋值,赋值内容是运算表达式a={n:2}的运算结果{n:2}
//a={n:2}这个运算表达式又创建了一个对象{n:2},同时让a指向这个对象
//此时内存中有两个对象 a指向于新的对象{n:2},b指向于原对象{n:1,x:{n:2}}
console.log(a.x);// -->undefined
console.log(b.x);// -->{n:2}

另一种解析:首先 . 运算符优先级高于= 所以先给{n:1}对象创建了x属性,对象变成{n:1,x:undefined}(当前a和b都是指向此内存对象),
然后连等从右往左执行,先把a指向改成{n:2},然后把最初的内存对象的x属性指向改成{n:2}(因为.运算符已执行,所以此时a.x是指{n:1,x:undefined}的x属性),内存对象变成{n:1,x:{n:2}}
此时只有b还是指向这个内存对象 所以:
a.x -->undefined
b -->{n:1,x:{n:2}}

相关文章

  • 前端劝退题(二)

    另一种解析:首先 . 运算符优先级高于= 所以先给{n:1}对象创建了x属性,对象变成{n:1,x:undef...

  • 前端劝退题

    下面代码中a在什么情况下会打印出1 答案一 1、如果原始类型和对象比较,对象会转为原始类型的值再进行比较2、对象转...

  • 前端面试的经典题

    前端面试的经典题 前端面试三部曲 前端面试概念收集器 前端面试的经典题 前端面试的难题和怪题 Javascript...

  • 前端面试的难题和怪题

    前端面试的难题和怪题 前端面试三部曲 前端面试概念收集器 前端面试的经典题 前端面试的难题和怪题 函数 答案 Er...

  • 前端基础扎实的新人,却是被领导劝退的第一波?

    上周听同事说,之前大家都很看好的前端工程师被领导劝退了,还说他工作这么久了常用的前端开发技能还不是很会。 记得刚进...

  • 前端面试概念收集器

    前端面试概念收集器 前端面试三部曲 前端面试概念收集器 前端面试的经典题 前端面试的难题和怪题 本文分为 概念,原...

  • Weex 在饿了么前端的实践

    内容来源:2017年4月8日,饿了么前端资深工程师题叶在“第二届中国前端开发者大会-高效前端开发实践和创新”进行《...

  • 前端题

    如何设计一个复用组件 单一职责 (只做一件事,利用组合) 无副作用(不要对其他组件产生影响) 避免操作DOM 开放...

  • 如何安装vue

    1、vue+webpack安装,生成初始化vue项目vue+webpack安装,生成初始化vue项目_前端劝退师儿...

  • 381 写一个职场小事:怎么莫名其妙就被劝退了?

    今天劝退一个UI,前端设计。 看起来是件很小的事情,前端和研发团队的一起在客户现场,为了点工作划分的小事吵起来,前...

网友评论

      本文标题:前端劝退题(二)

      本文链接:https://www.haomeiwen.com/subject/viminktx.html