-
JavaScript 定义了几种数据类型? 哪些是原始类型?哪些是复杂类型?原始类型和复杂类型的区别是什么?
- 数据类型:数值、字符串、布尔值称为原始类型(primitive type),对象为复杂类型(complex type),至于undefined和null,一般将它们看成两个特殊值。
- 数值(number):整数和小数(比如1和3.14)
- 字符串(string):字符组成的文本(比如"Hello World")
- 布尔值(boolean):true(真)和false(假)两个特定值
- undefined:表示“未定义”或不存在,即此处目前没有任何值
- null:表示空缺,即此处应该有一个值,但目前为空
- 对象(object):各种值组成的集合
- 区别:复杂类型是往往是多个原始类型的值的合成,可以看作是一个存放各种值的容器。
- 数据类型:数值、字符串、布尔值称为原始类型(primitive type),对象为复杂类型(complex type),至于undefined和null,一般将它们看成两个特殊值。
-
typeof和instanceof的作用和区别?
- typeof:输出的是字符串,只能判别原始类型number、string、boolean还有function以及undefined。
- instanceof:则输出的是boolean值,它还能判别次对象的类别如Array对象
如何判断一个变量是否是数字、字符串、布尔、函数?
使用typeof就能满足需求;-
NaN是什么? 有什么特别之处?
NaN全名Not a Number ,表明他不是一个数值如:- 数字减去一个字符
-
如何把非数值转化为数值?
- number()
- parseInt()
- parseFloat()
他们有第二个参数,表示制定输入的进制类别,然后转出10进制数。如;
parseInt(101,2) /5
==与===有什么区别
==: 相等,可以转换数据类型;如0==false /ture
===: 严格相等类型不匹配就返回flase;如0===false /false-
break与continue有什么区别?
- break 用于强制退出循环体。
- continue 用于退出本次循环,执行下次循环。
-
void 0 和 undefined在使用场景上有什么区别
- undefined 可以在局部作用域中被覆写
- void 运算返回值始终都是 undefined
-
以下代码的输出结果是?为什么?
console.log(1+1);
//2 数字相加
console.log("2"+"4");
//"24" 字符串拼接
console.log(2+"4");
//"24" 当有个参数是字符串,则默认为字符串拼接
console.log(+"4");
//4 数字4 -
以下代码的输出结果是?
var a = 1;
a+++a;
typeof a+2;
//"number2" 可以看成(typeof a)+2因为typeof a比运算符号的优先级高; -
以下代码的输出结果是? 为什么
var a = 1;
var b = 3;
console.log( a+++b );
//4 ++优先级比+高,(a++)+b =1+3 =4 -
遍历数组,把数组里的打印数组每一项的平方
var arr = [3,4,5];
for(var i=0;i<arr.length;i++) {
console.log(arr[i] * arr[i]);
} -
遍历 JSON, 打印里面的值
var obj = {
name: 'hunger',
sex: 'male',
age: 28
}
for (var a in obj) {
console.log(obj[a]);
} -
以下代码输出结果是?
var a = 1, b = 2, c = 3;
var val = typeof a + b || c >0
console.log(val)
//"number2" 前面返回ture后面不会执行
var d = 5;
var data = d ==5 && console.log('bb')
console.log(data)
/*
bb
undefined
console.log(‘bb’)输出bb。
d等于5,true,判断true和console.log(),是否都为true。
console.log('bb')得到undefined,undefined赋给data。
*/
var data2 = d = 0 || console.log('haha')
console.log(data2)
/*
haha
undefined
判断0为false,执行console.log();输出haha。
console.log(‘haha’)输出undefined,将undefined赋值给data2。
*/
var x = !!"Hello" + (!"world", !!"from here!!");
console.log(x)
/*
2
!!"Hello" =true
!!"from here!!"=true;
true+true=1+1=2;
*/
数据类型运算符流程控制语句
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1.JavaScript 定义了几种数据类型? 哪些是原始类型?哪些是复杂类型?原始类型和复杂类型的区别是什么? ...