我的作业1
# 我的作业1
# 1、
var arr=['x','y','z'];
var obj = {};
console.log(typeof arr);
console.log(typeof obj);
打印的结果是什么?
Object Object
# 2、
var arr = [1,2,3];
var arr2 = arr;
arr.push(4);
arr2.push(5);
请问arr 和arr2的结果是?
Arr和arr2都是[1,2,3,4,5]
# 3、
函数申明和函数表达式的区别
函数声明是在浏览器预处理期间在执行,且在执行期不再执行,函数表达式在浏览器执行期执行。
# 4、
对象属性获取的方式有二种.和[],区别是什么,代码说明
var person = new Object();
person.name = 'Alice';
person['age'] = 20;
.获取属性点,key是静态的。 []获得属性值,key是动态的
# 5、
检测对象是否有属性的存在中in运算符和hasOwnProperty()的区别?代码说明
function Animal(){}
Animal.prototype.name=’dog’
var a = new Animal()
console.log(‘name’ in a) // in可以判断实例属性和原型属性
console.log(a.hasOwnProperty(‘name’)) //false 只能判断实例属性
# 6、
var obj = {name:'张三',age:20,hobby:['游戏','逛街']};获取obj中的键
Object.keys(obj)
# 7、
var arr = [{check:true,id:1},{check:false,id:2},{check:false,id:3},{check:true,id:4}] 请取出check为true的值
var arr1 = arr.filter((p)=>{return p.check===true}
console.log(arr1)
# 8、
计算出以下商品单价和金额的总和,初始值为10
arr = [{count:1,price:10,name:'a'},{count:3,price:50,name:'b'},{count:5,price:23,name:'c'},{count:2,price:14,name:'d'}];
var arr1 = arr.reduce(function(total, p){return total+=p.count*p.price},10)
console.log(arr1)
# 9、
var a=10;
function test(){
console.log(a);
a=100;
var b = 2*a;
var a;
console.log(a);
console.log(b)
}
test(); 解析的过程及结果
Undefined //执行期未定义
100
200
# 10、
function fun () {
console.log( n );
n = 456;
console.log( n );
}
var n= 123;
fun( n);
console.log( n ); 解析的过程及结果
123
456
123
# 11、
function fun ( n ) {
console.log( n );
var n = 456;
console.log( n );
}
var n = 123;
fun( n ); 解析的过程及结果
123
456