数据类型运算符流程控制语句

2017-02-09  本文已影响8人  osborne

一: JavaScript 定义的几种数据类型;哪些是原始类型?哪些是复杂类型?原始类型和复杂类型的区别

二: typeof和instanceof的作用和区别

三: 怎样判断一个变量是否是数字、字符串、布尔、函数

typeof 123 === 'number' //判断是否为数字
typeof '123' === 'string' //判断是否为字符串
typeof false ==='boolean' //判断是否为布尔
typeof v ==='function' //判断是否为函数

四: NaN是什么? 有什么特别之处

五: 如何把非数值转化为数值

六: ==与===` 的区别

七: break与continue 的区别

八: void 0 和 undefined在使用场景上的区别

九: 以下代码的输出结果是?why

console.log(1+1); //2 两个操作数都是数字,加法运算   
console.log("2"+"4"); //"24" 两个参数都是字符串,字符串拼接  
console.log(2+"4"); //"24" 有一个参数是字符串,会把另外一个参数转换为字符串进行拼接
console.log(+"4"); //4 只有一个字符串,将其转换为数字

十: 以下代码的输出结果是?

var a = 1;  
a+++a;  //输出3,a++优先级高,运算结果为1,此时a=2,所以输出3
typeof a+2; //输出"number2",typeof优先级高,输出字符串"number",然后与数字2相加,数字转换为字符串然后拼接

十一: 以下代码的输出结果是? 原因

 var a = 1;
 var b = 3;
 console.log( a+++b );//输出4,a++优先级高,运算结果为1,然后与b相加

十二: 遍历数组,把数组里的打印数组每一项的平方

var arr = [3,4,5]
//for(var i = 0; i < arr.length; i++){console.log(arr[i]*arr[i])}
//输出结果:9 16 25

十三: 遍历 JSON, 打印里面的值

var obj = {
 name: 'hunger', 
 sex: 'male', 
 age: 28 
}
//for(var key in obj){console.log(obj[key])}
//输出结果:hunger  male  28

十四: 以下代码输出结果是? 为什么

var a = 1, b = 2, c = 3;
var val = typeof a + b || c >0
console.log(val) 
//优先级:typeof, +, >, || 依次运算输出结果为:number2

var d = 5;
var data = d ==5 && console.log('bb') 
console.log(data) //输出:bb undefined , console.log('bb')先执行输出bb,&&前为ture,console.log('bb')不返回布尔值,返回undefined,所以data为undefined

var data2 = d = 0 || console.log('haha')
console.log(data2)
//输出:haha undefined , console.log('haha')先执行输出haha,||优先级高于=,比较0和console.log('haha'),输出undefined,右结合赋值给data2,所以data2为undefined
 
var x = !!"Hello" + (!"world", !!"from here!!");
console.log(x)
//输出:2 , !"world"为false, !!"from here!!"为ture, !!"Hello"为ture,
 所以为ture+ture, 输出为2
- 学习总结
上一篇 下一篇

猜你喜欢

热点阅读