JS-JavaScript代码小结

1.1.完成如下代码判断一个变量是否是数字、字符串、布尔、函数

function isNumber()
{
typeof(a)=="number"
};

function isString()
{
typeof(a)=="string"
};

function isString()
{
typeof(b)=="string"
};

function isBoolean()
{
typeof(c)=="boolean"
};

function isFunction()
{
typeof(c)=="function"
};

function isFunction()
{
typeof(isNumber())=="function"
};
var a = 2
 , b = "jirengu"
 , c = false;
alert( isNumber(a) ); //true
alert( isString(a) ); //false
alert( isString(b) ); //true
alert( isBoolean(c) ); //true
alert( isFunction(a)); //false
alert( isFunction( isNumber ) ); //true

2.以下代码的输出结果是

console.log(1+1); //2
console.log("2"+"4"); //"24"
console.log(2+"4"); //"24"
console.log(+new Date());//1478660482216
console.log(+"4");//4

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

var a = 1;//给变量赋值为1
a+++a;/*可以看成为(a++)+a,此时第一个a为自增,但a本身的值没有变,
将增加的值赋给了第二个a变量,第二个a的值就为2,
可以看作a(自增但值没有变)+a(自增后赋给的值)=1+2=3*/

typeof a+2;/*由于JS存在优先级的问题,所以typeof a的优先级要高于a+2的优先级,
所以tpyeof a输出的是一个字符串:"number"
字符串和数字相加会得到字符串:"number2"*/

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

var arr = [3,4,5];
for(var i=0;i

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

var obj = 
  {
    name: 'hunger',
    sex: 'male',
    age: 28
  };
for(var i in obj)
  {
    document.write(i+":"+obj[i]+'
') }

6.下面代码的输出是? 为什么

console.log(a);/  /*undefined:因为JS先解析代码,获取所有被声明的变量,
然后再一行一行的运行,这造成所有的变量声明都会被前置,
变量声明前置不代表变量赋值也会前置,所以a显示为已经申明的变量,但a没有赋值*/
var a = 1;
console.log(a);//给a变量赋值为1,此时显示的为1
console.log(b);//由于JS解析代码的时候并没有获取到b的变量,所以会报错
// Uncaught ReferenceError: b is not defined

此文章由饥人谷_李子豪及饥人谷所有

你可能感兴趣的:(JS-JavaScript代码小结)