@wywm@z[y[W
@ | @wywm@ | @ |
@ | |JavaScript̊|@ | @ |
ŏIXVF2024N1228
@ގ̏xJԂR[fBOȂĂ悢悤ɁAg܂BJavaScriptł́A̒`̎d܂AƂ{IȂ̂́A
function () {
return ߂l;
}
Ƃ̂łBvOŁA()ƂƁÅĂяoAɈڍs܂BĂяö̕тƊ̈̕т͑Ή܂B̌ɐ͂܂Bɂ́Aϐ␔lłȂAzAIuWFNgA邱Ƃł܂B̒ň̒lύXĂĂяo̕ϐɂ͉e܂BAAzIuWFNǵAzvfvpeB̓eŕύXƁAĂяołύXĂ܂܂BĂяoƊň̌^ɑႪΓR삵܂B
@܂Aalert();ƂƁÃ\[XER[h\܂BJavaScriptł͊1̃IuWFNgȂ̂ŁAϐɑ邱Ƃł܂B
var deal1 = func1;
function func1() {
return ߂l;
}
ƂƁAdeal1ɂ́Afunc1()̖߂l̂ł͂ȂAfunc1̂̂܂B܂Adeal();ƂƁAfunc1()Ăяo܂B
@ȉ̂悤ɊȗĕϐɑAƂ\łB
var data1 = function (arg1, arg2) {
return ߂l;
}
̏ꍇ́A߂lϐdata1ɑ܂(L̊̂̑Ƃ̈ႢɒӂĂ)BƌĂ܂AϐɂȂ܂Bzvfɑ悤ȏꍇɂ͖̂܂܂łB
@܂ÄтAzvfAIuWFNg̃vpeBƂāAڊLq邱Ƃ\łBႦA
var data1 = function (arg1, function (arg2) {
1
return ߂l1;
}) {
2
retuen ߂l2;
}
ƁA܂Afunction(arg2)ĂĖ߂l1AOfunction(arg1,)̑2ƂȂÅ̖߂l2data1ɑ܂BOfunction'('ɑΉ')'Afunction̒`{}̌ɂĂ邱ƂɒӂĂB
@܂Aȉ̂悤ɂāAA[Ŋ`邱Ƃ\łBA[́A() => {e}Ƃ`Ă܂B
alert(data2("function"));
var data2 = (str1) => {
return str1 + "name";
}
ƁAalertŁAdata2\悤ƂăA["function"ƂČĂяoAstr1ɓ"function"ƁA"name"AāA_CAOfunctionnameƕ\܂BȂAA[`A1sŁA
var data2 = (str1) => str1 + "name";
ƏĂ܂Ƃł܂BłAstr1 + "name"̌ʂdata2ɓ܂B
@܂A̍ċAIĂяoƌ܂Äɂ̊g邱Ƃł܂BHTMLDOMc[Ŝ𑖍悤ȏꍇɎg܂B
var data3 = function rec1(s1, rec1) {
if (I) {
return 1;
}
if (rec1(s2, rec1)) return 1;
else return 0:
}
Ƃɂ܂BċAIĂяoɐ[ȂȂ悤ɁAIāAǂŏI悤ɂȂȂ܂B
@܂AFXȏɂ菈eςKvꍇɁAȉ̂悤ɁAϐŎOɒ`ĂāAɂϐɓւďςAƂƂł܂B
var fn1;
if (1) fn1 = func1;
else if (2) fn1 = func2;
else fn1 = func3;
data4 = fn1(s3);
function func1(arg1) {
1
}
function func2(arg1) {
2
}
function func3(arg1) {
3
}
ŁA1Ƃɏ1C2Ƃ2CȊȌꍇɏ3s܂B
@ȂÁA錾ł͎s܂B̌Ăяo_Ŏs܂B܂A錾͂̃XR[vŜŗLȂ̂ŁA̒`ĂяǒɒuƂ\łBL̗ł͂ȂĂ܂B
@܂ALł͕ϐfn1͊ɂȂĂ̂ŁAIuWFNg̋@\gƂł܂BIuWFNg̃vpeBɂ͈ȉ̂悤Ȃ̂܂B
fn1.name
fn1func2ĂA"func2"ɂȂ܂B
fn1.length
fn1ɓĂ̈̐Ă܂BL̗ł1łB
@`ƂAĂяoŊ̈ȗAundefinednꍇɔāAftHgwł܂Bȉ̂悤b=1ƂƁA2nΓnꂽlbƂA2ȗb=1Ƃē삵܂B
function func4(a, b=1) {
return a + b;
}
alert(func4(3));
alert(func4(7,5));
ŏalertł́A3+14ƕ\A2Ԗڂalertł́A7+5=1212ƕ\܂B
@̐s̊`ɂāAzƂĎ鑀@܂Bт̍ŌɁA...array(arrayfunc5XR[vƂzŁAc]ƌ܂)A
function func5(a, b, ...array) {
}
ƂAfunc5(1, 2, 3, 4, 5, 6);ƂČĂяoƁAa1Cb2܂Ac̈AzarrayɓAarray[0]=3, array[1]=4, array[2]=5, array[3]=6ƂȂ܂BAfor(const arg of array)ƂĎoƂł܂B܂Aarray.length4ɂȂĂĈ̐m邱Ƃł܂Bׂ̈Ăc]ɂɂ́A`func5(...array)Ƃ܂B
yLz@LłB̊F܂̂x肽A낵肢܂B
yLz@L͂܂łłB