際際滷

際際滷Share a Scribd company logo
Tommy Lin
爽x密
FB/Emailtooto1985@gmail.com
? 峙⊃(call by value)
? }u犯鬱出袖孚貧。
? 峽⊃(call by reference)
? 哈喘⊃宍出袖孚貧俐個賜x嚠仟峙脅個圻嗤
孚。
? 慌⊃(call by sharing)
? }u⊃宍出袖孚貧俐個個圻嗤孚徽x嚠仟
峙ta伏仟議⊃次
? 峙⊃(call by value)
? }u犯鬱出袖孚貧。
? 峽⊃(call by reference)
? 哈喘⊃宍出袖孚貧俐個賜x嚠仟峙脅個圻嗤
孚。
? 慌⊃(call by sharing)
? }u⊃宍出袖孚貧俐個個圻嗤孚徽x嚠仟
峙ta伏仟議⊃次
? 虔戒N心軟輜峙
? 圻兵(primitive)侏e頁音辛(immutable)議o隈俐個
峙喟h峪嬬x嚠仟峙。
? 虔戒N心軟輜峽
? 麗周(object)侏em隼頁辛(mutable)議俐個個圻
云⊃治徽x嚠仟峙a伏仟議⊃次
? 厘械械策待阻 ̄x嚠仟峙個圻嗤⊃次円@協x
? 湖X挫駟峽⊃ (H貧K音頁犖)
酒汽初府干温厩温皆界姻庄沿岳歌方勧弓
var aaa = ^string ̄; RAM
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
aaa
^string ̄
AddressVariable
0x01
var aaa = ^string ̄;
function run(xyz) {
xyz=^world ̄;
}
RAM
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
Address
run
function run´
Variable
aaa
^string ̄
0x01
0x03
var aaa = ^string ̄;
function run(xyz) {
xyz=^world ̄;
}
run(aaa);
RAM
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
Address
xyz
Variable
run
function run´
aaa
^string ̄
0x01
0x03
0x01
var aaa = ^string ̄;
function run(xyz) {
xyz=^world ̄;
}
run(aaa);
RAM
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
AddressVariable
xyz
run
function run´
aaa
^string ̄
0x01
0x03
0x06
^world ̄
var aaa = ^string ̄;
function run(xyz) {
xyz=^world ̄;
}
run(aaa);
console.log(aaa);
RAM
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
AddressVariable
xyz
run
function run´
aaa
^string ̄
0x01
0x03
0x06
^world ̄
酒汽初府干温厩温皆界姻庄沿岳歌方勧弓
var aaa = {name: ̄john ̄}; RAM
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
aaa
{name:^john ̄}
AddressVariable
0x01
var aaa = {name: ̄john ̄};
function run(xyz) {
xyz.name=^mark ̄;
}
RAM
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
Address
run
function run´
Variable
aaa
{name:^john ̄}
0x01
0x03
var aaa = {name: ̄john ̄};
function run(xyz) {
xyz.name=^mark ̄;
}
run(aaa);
RAM
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
AddressVariable
run
function run´
aaa
{name:^john ̄}
0x01
0x03
xyz 0x01
var aaa = {name: ̄john ̄};
function run(xyz) {
xyz.name=^mark ̄;
}
run(aaa);
RAM
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
AddressVariable
run
function run´
aaa
{name:^mark ̄}
0x01
0x03
xyz 0x01
var aaa = {name: ̄john ̄};
function run(xyz) {
xyz.name=^mark ̄;
}
run(aaa);
console.log(aaa);
RAM
0x01
0x02
0x03
0x04
0x05
0x06
0x07
0x08
0x09
AddressVariable
run
function run´
aaa
{name:^mark ̄}
0x01
0x03
xyz 0x01
? 嗤匯N貌峙⊃嫉峽⊃宍偵eX
? 徽JavaScript嶄峪嗤慌⊃(call by sharing)匯N
? http://www.ecma-international.org/ecma-262/5.1/#sec-8.7
? https://en.wikipedia.org/wiki/Evaluation_strategy#Call_by_sh
aring
? http://www.codeproject.com/Articles/882622/An-
Illustrated-Guide-to-Parameter-Passing-in-JavaS
? http://www.jstips.co/en/know-the-passing-mechanism/
? http://bosn.me/js/js-call-by-sharing/

More Related Content

What's hot (20)

AWS Glueを聞った Serverless ETL のg廾パタ`ン
AWS Glueを聞った Serverless ETL のg廾パタ`ンAWS Glueを聞った Serverless ETL のg廾パタ`ン
AWS Glueを聞った Serverless ETL のg廾パタ`ン
seiichi arai
?
REST API のコツ
REST API のコツREST API のコツ
REST API のコツ
pospome
?
AWS Black Belt Tech シリ`ズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリ`ズ 2015 - AWS CloudFormationAWS Black Belt Tech シリ`ズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリ`ズ 2015 - AWS CloudFormation
Amazon Web Services Japan
?
13.旺佩、峠佩嚥掲揖化
13.旺佩、峠佩嚥掲揖化13.旺佩、峠佩嚥掲揖化
13.旺佩、峠佩嚥掲揖化
Justin Lin
?
あの晩たMVCをWたちはまた?岑らない for RoR
あの晩たMVCをWたちはまた?岑らない for RoRあの晩たMVCをWたちはまた?岑らない for RoR
あの晩たMVCをWたちはまた?岑らない for RoR
shinnosuke kugimiya
?
Setup ColdFusion application using fusebox mvc architecture
Setup ColdFusion application using fusebox mvc architectureSetup ColdFusion application using fusebox mvc architecture
Setup ColdFusion application using fusebox mvc architecture
Mindfire Solutions
?
〆SHOWROOM〇の寄ト晒に育う室gn}のソリュ`ション ゛處宀?宀の畫燭鰆Г┐誣塞貨、HTML5鬉覆鼻
〆SHOWROOM〇の寄ト晒に育う室gn}のソリュ`ション  ゛處宀?宀の畫燭鰆Г┐誣塞貨、HTML5鬉覆鼻〆SHOWROOM〇の寄ト晒に育う室gn}のソリュ`ション  ゛處宀?宀の畫燭鰆Г┐誣塞貨、HTML5鬉覆鼻
〆SHOWROOM〇の寄ト晒に育う室gn}のソリュ`ション ゛處宀?宀の畫燭鰆Г┐誣塞貨、HTML5鬉覆鼻
DeNA
?
珂顎鉛艶皆看韓岳マイクロサ`ビスとデプロイメントパタ`ン
珂顎鉛艶皆看韓岳マイクロサ`ビスとデプロイメントパタ`ン珂顎鉛艶皆看韓岳マイクロサ`ビスとデプロイメントパタ`ン
珂顎鉛艶皆看韓岳マイクロサ`ビスとデプロイメントパタ`ン
Mitch Okamoto
?
箸龍のAzure websitesでパケ棒駅協殖」垳衡n署のFg
箸龍のAzure websitesでパケ棒駅協殖」垳衡n署のFg箸龍のAzure websitesでパケ棒駅協殖」垳衡n署のFg
箸龍のAzure websitesでパケ棒駅協殖」垳衡n署のFg
Kouji Matsui
?
Beyaz ?apkal? Hacker CEH E?itimi - B?l┨m 19
Beyaz ?apkal? Hacker CEH E?itimi - B?l┨m 19Beyaz ?apkal? Hacker CEH E?itimi - B?l┨m 19
Beyaz ?apkal? Hacker CEH E?itimi - B?l┨m 19
BGA Cyber Security
?
Temel A? S?zma Testine Giri? D?k┨man?
Temel A? S?zma Testine Giri? D?k┨man?Temel A? S?zma Testine Giri? D?k┨man?
Temel A? S?zma Testine Giri? D?k┨man?
Ahmet G┨rel
?
Hive Authorization
Hive AuthorizationHive Authorization
Hive Authorization
Minwoo Kim
?
10蛍て?わかるOpenAPI V3
10蛍て?わかるOpenAPI V310蛍て?わかるOpenAPI V3
10蛍て?わかるOpenAPI V3
Kazuchika Sekiya
?
REST API、gRPC、GraphQL 乾ってみた‐2023定12埖_岸茶氏Y創/
REST API、gRPC、GraphQL 乾ってみた‐2023定12埖_岸茶氏Y創/REST API、gRPC、GraphQL 乾ってみた‐2023定12埖_岸茶氏Y創/
REST API、gRPC、GraphQL 乾ってみた‐2023定12埖_岸茶氏Y創/
筬F 恃寒
?
堰意意永/2扮旗のウェブサイト譜柴
堰意意永/2扮旗のウェブサイト譜柴堰意意永/2扮旗のウェブサイト譜柴
堰意意永/2扮旗のウェブサイト譜柴
Kazuho Oku
?
ドメインl強譜柴 コアドメインを囂り栽ってみよう
ドメインl強譜柴 コアドメインを囂り栽ってみようドメインl強譜柴 コアドメインを囂り栽ってみよう
ドメインl強譜柴 コアドメインを囂り栽ってみよう
弥 材
?
Job schedulerを試喘したoperations as codeの弊順
Job schedulerを試喘したoperations as codeの弊順Job schedulerを試喘したoperations as codeの弊順
Job schedulerを試喘したoperations as codeの弊順
Daisuke Ikeda
?
AWS CDKに犯襪蕕譴 PHPer か?オススメする
AWS CDKに犯襪蕕譴 PHPer か?オススメするAWS CDKに犯襪蕕譴 PHPer か?オススメする
AWS CDKに犯襪蕕譴 PHPer か?オススメする
Taichi Inaba
?
AWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon KinesisAWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon Kinesis
Amazon Web Services Japan
?
Mobil Pentest E?itim D?k┨man?
Mobil Pentest E?itim D?k┨man?Mobil Pentest E?itim D?k┨man?
Mobil Pentest E?itim D?k┨man?
Ahmet G┨rel
?
AWS Glueを聞った Serverless ETL のg廾パタ`ン
AWS Glueを聞った Serverless ETL のg廾パタ`ンAWS Glueを聞った Serverless ETL のg廾パタ`ン
AWS Glueを聞った Serverless ETL のg廾パタ`ン
seiichi arai
?
REST API のコツ
REST API のコツREST API のコツ
REST API のコツ
pospome
?
AWS Black Belt Tech シリ`ズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリ`ズ 2015 - AWS CloudFormationAWS Black Belt Tech シリ`ズ 2015 - AWS CloudFormation
AWS Black Belt Tech シリ`ズ 2015 - AWS CloudFormation
Amazon Web Services Japan
?
13.旺佩、峠佩嚥掲揖化
13.旺佩、峠佩嚥掲揖化13.旺佩、峠佩嚥掲揖化
13.旺佩、峠佩嚥掲揖化
Justin Lin
?
あの晩たMVCをWたちはまた?岑らない for RoR
あの晩たMVCをWたちはまた?岑らない for RoRあの晩たMVCをWたちはまた?岑らない for RoR
あの晩たMVCをWたちはまた?岑らない for RoR
shinnosuke kugimiya
?
Setup ColdFusion application using fusebox mvc architecture
Setup ColdFusion application using fusebox mvc architectureSetup ColdFusion application using fusebox mvc architecture
Setup ColdFusion application using fusebox mvc architecture
Mindfire Solutions
?
〆SHOWROOM〇の寄ト晒に育う室gn}のソリュ`ション ゛處宀?宀の畫燭鰆Г┐誣塞貨、HTML5鬉覆鼻
〆SHOWROOM〇の寄ト晒に育う室gn}のソリュ`ション  ゛處宀?宀の畫燭鰆Г┐誣塞貨、HTML5鬉覆鼻〆SHOWROOM〇の寄ト晒に育う室gn}のソリュ`ション  ゛處宀?宀の畫燭鰆Г┐誣塞貨、HTML5鬉覆鼻
〆SHOWROOM〇の寄ト晒に育う室gn}のソリュ`ション ゛處宀?宀の畫燭鰆Г┐誣塞貨、HTML5鬉覆鼻
DeNA
?
珂顎鉛艶皆看韓岳マイクロサ`ビスとデプロイメントパタ`ン
珂顎鉛艶皆看韓岳マイクロサ`ビスとデプロイメントパタ`ン珂顎鉛艶皆看韓岳マイクロサ`ビスとデプロイメントパタ`ン
珂顎鉛艶皆看韓岳マイクロサ`ビスとデプロイメントパタ`ン
Mitch Okamoto
?
箸龍のAzure websitesでパケ棒駅協殖」垳衡n署のFg
箸龍のAzure websitesでパケ棒駅協殖」垳衡n署のFg箸龍のAzure websitesでパケ棒駅協殖」垳衡n署のFg
箸龍のAzure websitesでパケ棒駅協殖」垳衡n署のFg
Kouji Matsui
?
Beyaz ?apkal? Hacker CEH E?itimi - B?l┨m 19
Beyaz ?apkal? Hacker CEH E?itimi - B?l┨m 19Beyaz ?apkal? Hacker CEH E?itimi - B?l┨m 19
Beyaz ?apkal? Hacker CEH E?itimi - B?l┨m 19
BGA Cyber Security
?
Temel A? S?zma Testine Giri? D?k┨man?
Temel A? S?zma Testine Giri? D?k┨man?Temel A? S?zma Testine Giri? D?k┨man?
Temel A? S?zma Testine Giri? D?k┨man?
Ahmet G┨rel
?
Hive Authorization
Hive AuthorizationHive Authorization
Hive Authorization
Minwoo Kim
?
REST API、gRPC、GraphQL 乾ってみた‐2023定12埖_岸茶氏Y創/
REST API、gRPC、GraphQL 乾ってみた‐2023定12埖_岸茶氏Y創/REST API、gRPC、GraphQL 乾ってみた‐2023定12埖_岸茶氏Y創/
REST API、gRPC、GraphQL 乾ってみた‐2023定12埖_岸茶氏Y創/
筬F 恃寒
?
堰意意永/2扮旗のウェブサイト譜柴
堰意意永/2扮旗のウェブサイト譜柴堰意意永/2扮旗のウェブサイト譜柴
堰意意永/2扮旗のウェブサイト譜柴
Kazuho Oku
?
ドメインl強譜柴 コアドメインを囂り栽ってみよう
ドメインl強譜柴 コアドメインを囂り栽ってみようドメインl強譜柴 コアドメインを囂り栽ってみよう
ドメインl強譜柴 コアドメインを囂り栽ってみよう
弥 材
?
Job schedulerを試喘したoperations as codeの弊順
Job schedulerを試喘したoperations as codeの弊順Job schedulerを試喘したoperations as codeの弊順
Job schedulerを試喘したoperations as codeの弊順
Daisuke Ikeda
?
AWS CDKに犯襪蕕譴 PHPer か?オススメする
AWS CDKに犯襪蕕譴 PHPer か?オススメするAWS CDKに犯襪蕕譴 PHPer か?オススメする
AWS CDKに犯襪蕕譴 PHPer か?オススメする
Taichi Inaba
?
AWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon KinesisAWS Black Belt Online Seminar 2016 Amazon Kinesis
AWS Black Belt Online Seminar 2016 Amazon Kinesis
Amazon Web Services Japan
?
Mobil Pentest E?itim D?k┨man?
Mobil Pentest E?itim D?k┨man?Mobil Pentest E?itim D?k┨man?
Mobil Pentest E?itim D?k┨man?
Ahmet G┨rel
?

酒汽初府干温厩温皆界姻庄沿岳歌方勧弓

  • 2. ? 峙⊃(call by value) ? }u犯鬱出袖孚貧。 ? 峽⊃(call by reference) ? 哈喘⊃宍出袖孚貧俐個賜x嚠仟峙脅個圻嗤 孚。 ? 慌⊃(call by sharing) ? }u⊃宍出袖孚貧俐個個圻嗤孚徽x嚠仟 峙ta伏仟議⊃次
  • 3. ? 峙⊃(call by value) ? }u犯鬱出袖孚貧。 ? 峽⊃(call by reference) ? 哈喘⊃宍出袖孚貧俐個賜x嚠仟峙脅個圻嗤 孚。 ? 慌⊃(call by sharing) ? }u⊃宍出袖孚貧俐個個圻嗤孚徽x嚠仟 峙ta伏仟議⊃次
  • 4. ? 虔戒N心軟輜峙 ? 圻兵(primitive)侏e頁音辛(immutable)議o隈俐個 峙喟h峪嬬x嚠仟峙。 ? 虔戒N心軟輜峽 ? 麗周(object)侏em隼頁辛(mutable)議俐個個圻 云⊃治徽x嚠仟峙a伏仟議⊃次 ? 厘械械策待阻 ̄x嚠仟峙個圻嗤⊃次円@協x ? 湖X挫駟峽⊃ (H貧K音頁犖)
  • 6. var aaa = ^string ̄; RAM 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 aaa ^string ̄ AddressVariable 0x01
  • 7. var aaa = ^string ̄; function run(xyz) { xyz=^world ̄; } RAM 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 Address run function run´ Variable aaa ^string ̄ 0x01 0x03
  • 8. var aaa = ^string ̄; function run(xyz) { xyz=^world ̄; } run(aaa); RAM 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 Address xyz Variable run function run´ aaa ^string ̄ 0x01 0x03 0x01
  • 9. var aaa = ^string ̄; function run(xyz) { xyz=^world ̄; } run(aaa); RAM 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 AddressVariable xyz run function run´ aaa ^string ̄ 0x01 0x03 0x06 ^world ̄
  • 10. var aaa = ^string ̄; function run(xyz) { xyz=^world ̄; } run(aaa); console.log(aaa); RAM 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 AddressVariable xyz run function run´ aaa ^string ̄ 0x01 0x03 0x06 ^world ̄
  • 12. var aaa = {name: ̄john ̄}; RAM 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 aaa {name:^john ̄} AddressVariable 0x01
  • 13. var aaa = {name: ̄john ̄}; function run(xyz) { xyz.name=^mark ̄; } RAM 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 Address run function run´ Variable aaa {name:^john ̄} 0x01 0x03
  • 14. var aaa = {name: ̄john ̄}; function run(xyz) { xyz.name=^mark ̄; } run(aaa); RAM 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 AddressVariable run function run´ aaa {name:^john ̄} 0x01 0x03 xyz 0x01
  • 15. var aaa = {name: ̄john ̄}; function run(xyz) { xyz.name=^mark ̄; } run(aaa); RAM 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 AddressVariable run function run´ aaa {name:^mark ̄} 0x01 0x03 xyz 0x01
  • 16. var aaa = {name: ̄john ̄}; function run(xyz) { xyz.name=^mark ̄; } run(aaa); console.log(aaa); RAM 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 AddressVariable run function run´ aaa {name:^mark ̄} 0x01 0x03 xyz 0x01
  • 18. ? http://www.ecma-international.org/ecma-262/5.1/#sec-8.7 ? https://en.wikipedia.org/wiki/Evaluation_strategy#Call_by_sh aring ? http://www.codeproject.com/Articles/882622/An- Illustrated-Guide-to-Parameter-Passing-in-JavaS ? http://www.jstips.co/en/know-the-passing-mechanism/ ? http://bosn.me/js/js-call-by-sharing/