js?面向?qū)ο髮W(xué)習(xí)筆記
數(shù)據(jù)賦值拷貝
1、值得賦值是獨(dú)立的
num1=12; num1=num2
將存儲(chǔ)值賦值一份存儲(chǔ).
2、引用類型的賦值共享數(shù)據(jù)
var age=22; age2=age; age=24 console.log(age);
age2依舊是22
引用類型的賦值共享數(shù)據(jù)
指向同一片內(nèi)存
3、對(duì)象的賦值
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ù)形參&實(shí)參
例一
var num = 10;
function foo(num){
num=100;
console.log(num);
}
console.log(num);
#10例二
var num = 10;
function foo(num1){
//實(shí)參: 調(diào)用時(shí)傳遞的參數(shù)
//形參: 定義時(shí)傳遞的參數(shù)
num1=100;
console.log(num1);
}
foo(num);
console.log(num);
# 10 100 10例三
var num = 10;
function foo(num1){
//實(shí)參: 調(diào)用時(shí)傳遞的參數(shù)
//形參: 定義時(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);
#宅男對(duì)象的動(dòng)態(tài)性
動(dòng)態(tài)添加屬性和方法
p={
name:"劉德華",
age:22
}
//添加屬性方式1
p.gender="male";
//添加屬性方式2
p["salary"]=2000;
//添加對(duì)象類型屬性
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)這種方式訪問報(bào)錯(cuò)
console.log(p["0"]); //這種方式正常訪問以下等價(jià)
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刪除屬性
刪除對(duì)象的屬性
刪除未用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)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
IE之動(dòng)態(tài)添加DOM節(jié)點(diǎn)觸發(fā)window.resize事件
因?yàn)轫撁婧芏郩I是絕對(duì)定位的,所以當(dāng)窗口大小改變的時(shí)候會(huì)使原先的布局混亂,只好在每次window.resize的時(shí)候重新布局...2010-07-07
Javascript自定義函數(shù)判斷網(wǎng)站訪問類型是PC還是移動(dòng)終端
如果,能夠判斷出訪問Web網(wǎng)頁的類型(PC還是移動(dòng)終端)。就可以解決許多絢麗多彩的 Flash效果出不來的問題2014-01-01
javascript性能優(yōu)化之分時(shí)函數(shù)的介紹
本篇文章主要介紹了javascript性能優(yōu)化之分時(shí)函數(shù)的介紹,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-03
關(guān)于JavaScript中JSON的5個(gè)小技巧分享
這篇文章主要和大家分享五個(gè)JavaScript中的JSON技巧,例如:隱藏字符串化數(shù)據(jù)中的某些屬性、創(chuàng)建自定義輸出格式等,感興趣的小伙伴可以了解一下2022-03-03
詳解Bootstrap網(wǎng)格垂直和水平對(duì)齊方式
網(wǎng)格在網(wǎng)頁布局中是一個(gè)重點(diǎn)和難點(diǎn),布局是網(wǎng)頁設(shè)計(jì)的起點(diǎn)和基礎(chǔ),本文主要介紹了Bootstrap網(wǎng)格垂直和水平對(duì)齊方式,感興趣的可以了解一下2021-07-07
Bootstrap組件之下拉菜單,多級(jí)菜單及按鈕布局方法實(shí)例
這篇文章主要介紹了Bootstrap組件之下拉菜單,多級(jí)菜單及按鈕布局方法,結(jié)合完整實(shí)例形式分析了Bootstrap多級(jí)菜單布局相關(guān)樣式功能與具體使用技巧,需要的朋友可以參考下2017-05-05
JavaScript中for循環(huán)的幾種寫法與效率總結(jié)
每個(gè)接觸JS的開發(fā)人員都不可避免的與for循環(huán)打交道,畢竟這是遍歷必不可少的工具之一。然而當(dāng)循環(huán)次數(shù)比較大時(shí),效率問題必須重視。下面這篇文章就主要介紹了JavaScript中幾種for循環(huán)的寫法與效率,需要的朋友可以參考借鑒,下面來一起看看吧。2017-02-02
利用prop-types第三方庫對(duì)組件的props中的變量進(jìn)行類型檢測(cè)
本篇文章主要介紹了利用prop-types第三方庫對(duì)組件的props中的變量進(jìn)行類型檢測(cè)的相關(guān)知識(shí),具有很好的參考價(jià)值。下面跟著小編一起來看下吧2017-05-05

