当前位置: 首页 > news >正文

现在公司做各网站要多少钱竹中建设官方网站

现在公司做各网站要多少钱,竹中建设官方网站,益阳市赫山区建设局网站,四川省建筑公司今天做到了一道题:请解释什么是函数的作用域? 我给的答案是: 函数的作用域是指函数执行到内部后创建的数据空间,在函数的作用域内,let定义的变量的有效期为函数作用域 AI觉得我答得比较简单:回答基本正确&…

今天做到了一道题:请解释什么是函数的作用域?

我给的答案是:

函数的作用域是指函数执行到内部后创建的数据空间,在函数的作用域内,let定义的变量的有效期为函数作用域

AI觉得我答得比较简单:回答基本正确,但可以补充更多细节来提高回答质量。

正好就查一下,函数作用域在javascript里到底是什么。

经查实,前端考察作用域主要考察的是一种例外情况,就是在函数内的块里面定义的变量可能被抬升到函数级别的问题,例如下面的golang例子

var a = 1func TestScope(t *testing.T) {//测试golang的作用域t.Log("a=", a)if true {var a = 2t.Log("a=", a)}
}

打印为:

test.go:29: a= 1

test.go:32: a= 2

第一次打印时,a应该是全局的第一行定义的a,所以打印1

第二次,在if这个独立的作用域里面定义了一个a,覆盖了全局的a,所以第二个打印,a=2

再来看对应的javascript版本

var var_a = 1
function test_Scope(){console.log(var_a)if (true){var var_a = 2console.log(var_a)}logc()
}
var var_a = 1
function test_Scope(){console.log(var_a)if (true){var var_a = 2console.log(var_a)}
}
test_Scope()

打印却是:

这里面第一次打印的时候,按其他语言应该还是全局的1才对,但是因为javascript把函数里面所有定义过的变量都放在了一个统一的函数作用域里面,使得这时,运行时认为var_a已经有了,只是还未赋值。

同样的问题在循环里也有

for (var i = 0; i < 10; i++) {    console.log(i);    
}    
console.log(i);  // 10 i只是for里面的函数,按道理在这里应该是undefined

而我回答的let确实是为了解决这个问题存在的:

来看上面的程序的let版本

let var_a = 1
function test_Scope(){console.log(var_a)if (true){let var_a = 2console.log(var_a)}
}
test_Scope()

打印则变成了

这就和其他语言的定义一致了。

所以如果再答我认为应该这样回答:

函数的作用域是指函数执行到内部后创建的数据空间,在函数的作用域内,var定义的变量具有相同的共同作用域,let定义的变量只有块状定义域,从定义语句开始,到所属的大括号结束,编写程序时应注意javascript和其他语言的不同,避免造成定义不一致的问题。

http://www.yayakq.cn/news/424582/

相关文章:

  • 西安公司网站网站后台收入怎么做会计分录
  • 资讯门户网站怎么做网站后台修改图片集顺序
  • 杭州维利国德网站建设案例网站推广的优缺点
  • 凡科建站手机版登录大良手机网站建设
  • 网站查询域名访问网站调用网页内容
  • 网站备案 新增接入wordpress 餐饮主题
  • 租服务器的网站天津建设工程信息网账号密码
  • 自己做网站建设加强统计局网站的建设和管理
  • 小企业网站建设口碑apple网站设计
  • 仿牌网站空间wordpress4.x
  • 哪个网站有淘宝做图的素材seo查询百科
  • 海珠哪家网站建设好学室内设计后悔了
  • 网站开发实用技术知识点长春网站制作长春万网
  • 迅 网站 模板河北省住房和城乡建设厅信用网站
  • 中文旅游网站模板下载中铁建设企业门户
  • 新网站建设哪家好做网站特别简单的软件
  • 懒人做图网站百度公司官网
  • 南通网站定制搭建网上企业名称申请入口
  • 扬州市城乡建设局网站首页彩页设计怎么做
  • 做网站 侵权静安做网站公司
  • 建 新闻 网站计算机网站建设
  • 重庆彼客的网站是谁家做的关停网站的申请
  • 淮北手机网站建设公司系统集成项目管理中级职称
  • 创业郑州网站优化汉狮
  • 小松建设官方网站建筑工程培训有哪些
  • 用asp.net做的网站有哪些网站建设的主要客户群体
  • 如何做微信网站防封域名网址申请流程
  • 网站备案可以做电影网站吗wordpress epanel
  • 天津建设安全协会网站做网站学哪些语言
  • 建设网站图片素材做美容有哪些网站