javascript - 执行下面的语句后,V的值为什么是这样?

查看:228
本文介绍了javascript - 执行下面的语句后,V的值为什么是这样?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

var v = v || 10; 

var v = 0 || 10; 

var v = 5 || 10; 

var v = null || 10; 

依次执行这四个语句,得到V的值分别是10、10、5、10。
新手不太理解为什么,求解,感谢!

解决方案

||为短路或,A||B的执行规则为:

  • 1.A为true取A;

  • 2.A为false取B

    var v = v || 10;

执行顺序为先执行 var v (变量声明提升);再执行v||10,此时vundefined,转化为布尔值为false,则取10,即将10赋予v

var v = 0 || 10; 
var v = 5 || 10; 
var v = null || 10;

这三个自己分析一下,应该可以了。


补充一点。依次执行的话,同作用域内已声明过的变量是不会被重新声明的,即后三个var a是不会被执行的,只会执行 v = ***

这篇关于javascript - 执行下面的语句后,V的值为什么是这样?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆