欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js?面向?qū)ο髮W(xué)習(xí)筆記

 更新時間:2023年05月01日 20:41:26   作者:毛臺  
這篇文章主要介紹了js?面向?qū)ο?需要的朋友可以參考下

數(shù)據(jù)賦值拷貝

1、值得賦值是獨立的

num1=12;
num1=num2

將存儲值賦值一份存儲.

2、引用類型的賦值共享數(shù)據(jù)

var age=22;
age2=age;
age=24
console.log(age);

age2依舊是22

引用類型的賦值共享數(shù)據(jù)
指向同一片內(nèi)存

3、對象的賦值

var p={
    name:"shizi",
    age:22,
}
p1=p;
console.log(p.name,p.age);
console.log(p1.name,p1.age);
console.log("------------------------");
p.name="maotai";
p.age=24;
console.log(p.name,p.age);
console.log(p1.name,p1.age);

值類型賦值--函數(shù)形參&實參

例一

var num = 10;
function foo(num){
    num=100;
    console.log(num);
}
console.log(num);
#10

例二

var num = 10;
function foo(num1){
    //實參: 調(diào)用時傳遞的參數(shù)
    //形參: 定義時傳遞的參數(shù)
    num1=100;
    console.log(num1);
}
foo(num);
console.log(num);
# 10 100 10

例三

var num = 10;
function foo(num1){
    //實參: 調(diào)用時傳遞的參數(shù)
    //形參: 定義時傳遞的參數(shù)
    //var num1=num;
    num1=100;
    console.log(num1);
}
foo(num);
console.log(num);
# 10 100 10

引用類型賦值

var obj={
    name:"宅男"
}
function jinhua(param){
    param.name="高富帥";
}
jinhua(obj);
console.log(obj.name);
#高富刷
var obj={
    name:"宅男"
}
function jinhua(param){
    param.name="高富帥";
    //重新開辟內(nèi)存,param重新指向一片mem
    param={
        name: "腐女"
    }
    param.name="宅男";
}
jinhua(obj);
console.log(obj.name);
#宅男

對象的動態(tài)性

動態(tài)添加屬性和方法

p={
    name:"劉德華",
    age:22
}
//添加屬性方式1
p.gender="male";
//添加屬性方式2
p["salary"]=2000;
//添加對象類型屬性
p.foo=function(){console.log("sing");}
//訪問屬性方式1
console.log(p.foo());
console.log(p.salary);
//訪問屬性方式2
console.log(p["name"];
p={
    name:"劉德華",
    age:22
}
p["salary"]=2000;  //是字符串
console.log(p.salary);
p={
    name:"劉德華",
    age:22
}
p[0]=2000; //隱式將0轉(zhuǎn)換為字符串
//console.log(p.0); //發(fā)現(xiàn)這種方式訪問報錯
console.log(p["0"]); //這種方式正常訪問

以下等價

p={
    name:"劉德華",
    age:22
}
p[{}]="shizi";
console.log(p);
p={
    name:"劉德華",
    age:22
}
p["[object Object]"]="shizi";
console.log(p);

探究

a={}
console.log(a.toString());
#"[object Object]"

delete刪除屬性

刪除對象的屬性

刪除未用var定義的變量.

  • delete返回布爾
  • 刪除不存在的屬性,返回true
  • 無法刪除原形中的屬性 如 delete obj.toString()
resu=delete obj.name;
# resu返回值是true
var num1=100;
console.log(num1);
console.log(window.num1);
# 100 100
num1=100;
console.log(num1);
console.log(window.num1);
# 100 100
var num1=100;
delete(num1); 
console.log(window.num1);
# 100
num1=100; //未使用var,可被delete刪除
delete(num1); 
console.log(window.num1);
## undefined

到此這篇關(guān)于js 面向?qū)ο蟮奈恼戮徒榻B到這了,更多相關(guān)js 面向?qū)ο髢?nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論