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

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

6种
1)数值(number),字符串(string),布尔值(boolean),undefine,null,对象(Object)
2)原始类型:数值,字符串,布尔值
3)复杂类型:对象:狭义的对象,数组,函数,正则表达式
4)复杂类型是有原始类型组成

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

区别一:

var a=[1,2];
typeof a;//object
a instanceof Array;//true
区别二:

typeof判断数据类型,直接输出数据的类型instanceof判断数据的类型是否等于描述的数据类型,输出 true或者false

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

使用typeof很容易的输出要判断的数据是数字、字符串、布尔或函数

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

1)NaN: not a number(非数字)
2)NaN和任何数据类型都不相等,包括自己
NaN===NaN;//false

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

number()
parseInt()
parseFloat()

数据类型运算符流程控制语句_第1张图片
图片.png

6,==与===有什么区别?

== 双等号:不严格相等 不判断类型,只判断值是否相等
===三等号:严格相等,类型和值完全相等

7,break与continue有什么区别

break:跳出循环,执行循环后面的语句continue:跳出本次循环,执行下一次循环

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

undefined是全局对象的一个属性,因此给它赋值是不会报错的当某个地方把undefined赋值了,后面要利用undefined来判断某个变量是否是undefined的时候就不成立了,所以使用void 0来代替undefined。为什么用void 0来代替undefined呢,因为void后面无论跟一个什么表达式例如:void 1+2; void 2,它们的效果一样,返回值都是undefined ,更重要的是它不会被重写,而且不少压缩工具在压缩undefined的时候也是把undefined用void 0代替
综上所诉:void 0不会被重写返回值为undefined ,undefined会被重写返回值为undefined

9,

图片.png

以次输出:
2
24
24
4

10

图片.png

输出:
2
"number2"

11

图片.png

输出:
4

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

数据类型运算符流程控制语句_第2张图片
图片.png
数据类型运算符流程控制语句_第3张图片
图片.png

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

数据类型运算符流程控制语句_第4张图片
图片.png
数据类型运算符流程控制语句_第5张图片
图片.png

14, 以下代码输出结果是? 为什么

数据类型运算符流程控制语句_第6张图片
图片.png
  1. number2
    运算步骤:
    "number"+2||c>0
    "number2"||c>0
    "number2"||true
    "number2"

  2. bb
    运算步骤:
    date=ture&&bb
    date=bb
    bb

  3. haha
    运算步骤:
    data2=d=0||"haha"
    data2=d="haha"
    data2="haha"

  4. 2
    运算步骤:
    x=1+(0,1);
    x=1+1;
    x=2
    连接

你可能感兴趣的:(数据类型运算符流程控制语句)