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

1.JavaScript 定义了几种数据类型? 哪些是原始类型?哪些是复杂类型?原始类型和复杂类型的区别是什么?

  • 六种数据类型
  • 数值:原始类型
  • 字符串:原始类型
  • 布尔值:原始类型
  • undefined
  • null
  • 对象:复杂类型
  • 区别: 原始类型存储在堆,复杂类型存储在栈(地址),指向堆中的数据

2.typeof和instanceof的作用和区别?

  • typeof:返回一个值的数据类型
  • instanceof:用来判断一个实例是否某个对象的实例
    -区别:typeof用来获取数据类型,为单目运算符;instanceof可以区分对象中的实例,为双目运算符

3.如何判断一个变量是否是数字、字符串、布尔、函数

typeof 123 === 'number'
typeof '123' === 'string'
typeof true === 'boolean'
typeof a === 'function'

4.NaN是什么? 有什么特别之处?

  • Not a number, 表示非数字
  • NaN和任何值都不相等,包括自己

5.如何把非数值转化为数值?

  • Number()
  • parseInt()
  • parseFloat()

6.==与===有什么区别

  • ==: 相等,有类型处理
  • ===:严格相等,与C语言的“==”一样

7.break与continue有什么区别

  • break用于强制退出循环体,执行循环后面的语句
  • continue 用于退出本次循环,执行下次循环

8.void 0 和 undefined在使用场景上有什么区别

  • void运算符的作用是执行一个表达式,然后返回undefined,所以前者在函数中,作为返回值的一种判断

9.以下代码的输出结果是?为什么?

console.log(1+1);    //2
console.log("2"+"4");  //"6"
console.log(2+"4");    //“24”,拼接功能
console.log(+"4");   //4,正负号的数值功能

10.以下代码的输出结果是?

var a = 1;  
a+++a;  //3
typeof a+2;    //"number2"

11.以下代码的输出结果是? 为什么

 var a = 1;
 var b = 3;
 console.log( a+++b ); //4,++运算符优先级比+运算符高

12.遍历数组,把数组里的打印数组每一项的平方

var arr = [3,4,5]
for (var i = 0; i <= arr.length-1; i++) {
    console.log(arr[i] * arr[i]) ;
}

13.遍历 JSON, 打印里面的值

var obj = {
 name: 'hunger', 
 sex: 'male', 
 age: 28 
}

for (prop in obj) {
    console.log(prop + ": " + obj[prop]);
}

14.以下代码输出结果是? 为什么 (选做题目)

var a = 1, b = 2, c = 3;
var val = typeof a + b || c >0   // (typeof a) + 2
console.log(val)  // number2  

var d = 5;
var data = d ==5 && console.log('bb')  // data= ((d==5) && 'bb')
console.log(data) //'bb'

var data2 = d = 0 || console.log('haha') //data=(d=(0 ||'haha'))
console.log(data2)  //'haha'
 
var x = !!"Hello" + (!"world", !!"from here!!"); //x= (true + true)
console.log(x) //2
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容