JS基础学习日志之对象方法、for in枚举对象属性

目标:2019年结束前可以自己上手写出一个完整项目.
计划:目前先学完《尚硅谷JavaScript》140P,抽空多看HTML&CSS,之后再计划别的.
习惯:每天至少可以学1P.

2019-10-29

《尚硅谷JavaScript》学习笔记
P56(立即执行函数)、P56(对象-方法、for in枚举对象中的属性)

还是需要再多看几次,多打几次加深理解

一、立即执行函数:函数会被立马调用执行
1、该函数只会执行一次。
2、立即执行函数可以正常调用:
function(){
alert("匿名函数自调用");
} //会报错,因为解析器将{}中当作代码块,不能正常识别function()
(function(){
alert("匿名函数自调用");
})//使用【()】括号将整个函数括起来表明为一个整体。
函数对象()//上面本身已经是一个函数对象,只是没有用一个变量名去接收函数。
(function(){
alert("匿名函数自调用");
})()//为立即执行函数
3、立即执行函数可以正常传参:
(function(a,b){
console.log("a = "+a);
console.log("b = "+b);
})(123,456)

二、对象的方法(method)
-函数也可以是对象的属性。
-当函数作为对象的一个属性保存时,则这个函数被称为对象的方法。
-属性:obj.xxx ;方法:obj.xxx().
var obj = new Object();
obj.name="2222"; //属性
obj.sayName = function(){
console.log(obj.name);
};
obj.sayName();//方法
-调用该函数时,为调用对象的方法。sayName()为调用函数,obj.sayName()为调用方法,只是叫法不同,其余一致。

二、枚举对象中的属性:不清楚对象中的属性有多少有什么....
-使用for ... in 语句:对象中有几个属性,循环体就会执行几次。
for (var n(变量名) in obj(对象)){ //每次执行循环时,都会把对象的属性名赋值给变量
console.log("属性名:"+n);
console.log("属性值:"+obj.n);//错误写法,obj.n指,在obj对象中找属性名为n的属性,当属性中不存在n时,返回为undefined,n为变量,变量可以是任意类型。
console.log("属性值:"+obj[n]);//使用变量寻找属性时,可使用【[]】中括号,[ ]中可以直接传递一个变量。
}

——————————————2019-10-29-23:40—————————————

你可能感兴趣的:(JS基础学习日志之对象方法、for in枚举对象属性)