程式設計思想:把一些生活中做事的經驗融入到程式中
* 面向過程:凡事都要親力親為,每件事的具體過程都要知道,注重的是過程
* 物件導向:根據需求找物件,所有的事都用物件來做,注重的是結果
** 物件導向特性:封裝,繼承,多型 (抽象性)
* js不是物件導向的語言,但是可以模擬物件導向的思想
* js是一門基於物件的語言:
* 萬物皆物件:---------->程式猿 程旭媛
** 什麼是物件?
* 看的見,摸得到,具體特指的某個東西
** 分析物件有什麼特點:特徵和行為
** 物件:有特徵和行為,具體特指的某乙個事物
** 物件:有屬性和方法,具體特指的某個事物
建立物件三種方式:
* 1.呼叫系統的建構函式建立物件
* var 變數名= new object(); object 是系統的建構函式 array
var obj = new object();
//物件有特徵---屬性和行為---方法
//新增屬性-----如何新增屬性? 物件.名字=值;
obj.name = "小蘇";
obj.age = 38;
obj.*** = "女";
//新增方法----如何新增方法? 物件.名字=函式;
obj.eat = function () ;
* 如何獲取該變數(物件)是不是屬於什麼型別的?
* 語法:
* 變數 instanceof 型別的名字----->布林型別,true就是這種型別,false不是這種型別
* 在當前的物件的方法中,可以使用this關鍵字代表當前的物件
//工廠模式建立物件
function createobject(name,age) ;
return obj;
}//建立人的物件
var per1 = createobject("小芳",20);
* 2.自定義建構函式建立物件(結合第一種和需求通過工廠模式建立物件)
function person(name,age) ;
}//自定義建構函式建立物件:先自定義乙個建構函式,建立物件
var obj=new person("小明",10);
//自定義狗的建構函式,建立物件
function dog(name,age,***)
var dog=new dog("大黃",20,"男");
console.log(dog instanceof person);//false
* 1). 在記憶體中開闢(申請一塊空閒的空間)空間,儲存建立的新的物件
* 2). 把this設定為當前的物件
* 3). 設定物件的屬性和方法的值
* 4). 把this這個物件返回
* 3.字面量的方式建立物件
var obj={};
obj.name="小白";
obj.age=10;
obj.sayhi=function () ;
obj.sayhi();
var obj2=,
eat:function ()
};
設定和獲取屬性的另一種寫法
function person(name,age) ;
}var obj=new person("卡卡西",20);
"佐助";
obj["name"]="佐助";
console.log(obj["name"]);
obj.play();
obj["play"]();
物件:有屬性和方法,特指的某個事物
物件:一組無序屬性的集合的鍵值對,屬性的值,可以是任意的型別
json格式的資料:一般都是成對的,是鍵值對.
一般json格式的資料無論是鍵還是值都是用雙引號括起來的
var json = ;
for (var key in json)
簡單型別和複雜型別
//原始資料型別: number,string,boolean,undefined, null,object
//基本型別(簡單型別),值型別: number,string,boolean
//複雜型別(引用型別):object
//空型別:undefined,null
//值型別的值在哪一塊空間中儲存? 棧中儲存
//引用型別的值在哪一塊空間中儲存?物件在堆上儲存,位址在棧上儲存
//var num=10;//值型別,值在棧上
//var obj={};//複雜型別,物件在堆,位址(引用)在棧
//值型別之間傳遞,傳遞的是值
//引用型別之間傳遞,傳遞的是位址(引用)
//值型別作為函式的引數,傳遞的是值
//引用型別作為函式的引數,傳遞的是位址
內建物件
* js學習中三種物件:
* 1.內建物件----js系統自帶的物件
* 2.自定義物件---自己定義的建構函式建立的物件
* 3.瀏覽器物件---bom的時候講
** 內建物件:
* math
* date
* string
* array
* object
//如何驗證變數是不是物件
// var obj={};
// console.log(obj instanceof object);
math內建物件
//例項物件:通過建構函式建立出來,例項化的物件
//靜態物件:不需要建立,直接就是乙個物件,方法(靜態方法)直接通過這個物件名字呼叫,
//例項方法必須通過例項物件呼叫
//靜態方法必須通過大寫的物件呼叫
常數的底數
值)-----絕對值
值)----向上取整
值)---向下取整
注意:// console.log(math.abs(null));//---------0 重點
// console.log(math.abs("string"));//nan
JavaScript學習記錄十
總結繫結事件的區別 addeventlistener attachevent 相同點 都可以為元素繫結事件 不同點 1.方法名不一樣 2.引數個數不一樣addeventlistener三個引數,attachevent兩個引數 3.addeventlistener 谷歌,火狐,ie11支援,ie8不支...
JavaScript學習記錄十二
scroll系列 元素的樣式屬性是無法直接通過 物件.style.屬性來獲取 樣式在style屬性中設定 offset系列 offsetleft 距離左邊位置的值 offsettop 距離上面位置的值 offsetwidth 元素的寬 有邊框 offsetheight 元素的高 有邊框 scroll...
Golang學習記錄 五
golang學習記錄 一 golang學習記錄 二 golang學習記錄 三 golang學習記錄 四 golang學習記錄 五 golang學習記錄 六 go 是乙個開源的程式語言,它能讓構造簡單 可靠且高效的軟體變得容易。go是從2007年末由robert griesemer,rob pike,...