2022/1/13
2022/1/19 23:54:15
本文主要是介绍2022/1/13,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
- 2022/1/13
- 一、javascript
- (1)面试题:
- (2)预编译三道题:
2022/1/13
一、javascript
var a =false + 1; console.log(a);//1 var b =false==1; console.log(b);//false
(1)面试题:
if(typeof(a)&&(-true) + (+undefined) + ''){//typeof(a)是真,往后走,(-true)是隐式类型转换-1 //+undefined是NaN+字符串之后还是NaN,通过 console.log('通过了'); }else{ console.log('没通过'); } console.log(typeof(a));//字符串的undefined
例题二:
5 * '3'
为隐式转换。
if(1 + 5 * '3'==16){ console.log('pass');//pass }else{ console.log('not pass'); }
例3(笔试题):或运算,是假往后走
console.log(!!' '+!!'' - !!false ||'未通过');//1 1-0-0=1
分析:!!' '
里面有个空格所以是true,然后两个 !!代表是true,最终是true
(1)
! ! ''
里面没有字符串是false
,然后两个!!是true,最终是false
(0)
!!false
是0。
(2)预编译三道题:
1.打印出函数体
function test(){ return a; a = 1 ; function a(){} var a = 2; } console.log(test());//f a(){}
AO ,GO过程:
AO = { a : undefined->function a(){}, }
return有两个作用,一个是返回函数值,一个是终止函数
AO步骤:1、形参和变量声明
2 、实参赋值给形参
3、寻找函数声明
4、执行
console.log(test());//2 function test(){ a = 1; function a(){} var a = 2 ; return a ;//在最后 }
过程:
AO ={ a :undefined,->function a(){},->1 ->2 }
a= 1; function test(e){ function e(){} arguments[0]=2;//实参改了,赋值为2 console.log(e);//2 if(a){ //下面var a之后,这边a是undefined(false) var b =3; } var c ; a =4; var a; console.log(b); //undefined,因为上面的if语句是false,所以没有赋值 f =5; console.log(c);//undefined console.log(a);//4 } var a; test(1); console.log(a);//1 console.log(f);//5
其中f=1
不受函数作用域影响,所以在函数内赋值,函数外也可以输出。
过程:
GO ={ a : undefined -> 1 test:function test(){...} f:5 }
AO = { e:undefined,->1 ->function e(){}->2 b:undefined, c:undefined, a:undefined -> 4 }
注意:变量b,他不看if语句,只要var b就 赋值undefined,他的变量声明还是在的,执行的时候才看if判断是否对错
这篇关于2022/1/13的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-22项目:远程温湿度检测系统
- 2024-12-21《鸿蒙HarmonyOS应用开发从入门到精通(第2版)》简介
- 2024-12-21后台管理系统开发教程:新手入门全指南
- 2024-12-21后台开发教程:新手入门及实战指南
- 2024-12-21后台综合解决方案教程:新手入门指南
- 2024-12-21接口模块封装教程:新手必备指南
- 2024-12-21请求动作封装教程:新手必看指南
- 2024-12-21RBAC的权限教程:从入门到实践
- 2024-12-21登录鉴权实战:新手入门教程
- 2024-12-21动态权限实战入门指南