[{"data":1,"prerenderedAt":478},["ShallowReactive",2],{"all-dictionary":3},[4],{"id":5,"title":6,"body":7,"category":469,"description":42,"draft":470,"extension":471,"meta":472,"navigation":205,"path":473,"seo":474,"stem":475,"__hash__":476,"actualPath":477},"dictionary\u002Fdict\u002Flet\u002Findex.md","let",{"type":8,"value":9,"toc":461},"minimark",[10,15,19,24,36,113,117,149,268,279,287,301,382,448,457],[11,12,14],"h2",{"id":13},"_1-変数を宣言","1. 変数を宣言",[16,17,18],"p",{},"変数を宣言しますが，主にあとで変更する可能性があるものに対して使います．",[20,21,23],"h3",{"id":22},"例１ログイン状態を管理する","例１：ログイン状態を管理する",[16,25,26,27,31,32,35],{},"以下の例では，ログインの成功を示す変数（",[28,29,30],"code",{},"loginSuccessful","）が真であった場合のみ，変数",[28,33,34],{},"isLoggedIn","を真にしています．",[37,38,43],"pre",{"className":39,"code":40,"language":41,"meta":42,"style":42},"language-js shiki shiki-themes night-owl","let isLoggedIn = false;\n\u002F\u002F ...\nif (loginSuccessful) {\n  isLoggedIn = true; \u002F\u002F 状態の更新\n}\n","js","",[28,44,45,68,75,89,107],{"__ignoreMap":42},[46,47,50,53,57,60,64],"span",{"class":48,"line":49},"line",1,[46,51,6],{"class":52},"sJ14y",[46,54,56],{"class":55},"sasy7"," isLoggedIn",[46,58,59],{"class":52}," =",[46,61,63],{"class":62},"sIpC3"," false",[46,65,67],{"class":66},"sJeqr",";\n",[46,69,71],{"class":48,"line":70},2,[46,72,74],{"class":73},"s8J1n","\u002F\u002F ...\n",[46,76,78,81,84,86],{"class":48,"line":77},3,[46,79,80],{"class":52},"if",[46,82,83],{"class":66}," (",[46,85,30],{"class":55},[46,87,88],{"class":66},") {\n",[46,90,92,95,97,101,104],{"class":48,"line":91},4,[46,93,94],{"class":55},"  isLoggedIn",[46,96,59],{"class":52},[46,98,100],{"class":99},"skbjf"," true",[46,102,103],{"class":66},"; ",[46,105,106],{"class":73},"\u002F\u002F 状態の更新\n",[46,108,110],{"class":48,"line":109},5,[46,111,112],{"class":66},"}\n",[20,114,116],{"id":115},"例２svelteでリアクティブなuiを作る","例２：SvelteでリアクティブなUIを作る",[16,118,119,120,127,128,131,132,135,138,139,142,143,145,146,148],{},"以下の例は，",[121,122,126],"a",{"href":123,"rel":124},"https:\u002F\u002Fsvelte.dev",[125],"nofollow","Svelte","というフレームワークで，変数",[28,129,130],{},"displayName","を操作するコードです．",[133,134],"br",{},[28,136,137],{},"bind:value","は，",[28,140,141],{},"\u003Cinput>","（HTMLのテキストボックス）内の文字列と，変数を同期するための属性で，テキストボックスを書き換えると変数",[28,144,130],{},"も書き換えられるため，再代入が可能な",[28,147,6],{},"を使って宣言します．",[37,150,154],{"className":151,"code":152,"language":153,"meta":42,"style":42},"language-svelte shiki shiki-themes night-owl","\u003Cscript>\n  let displayName = '太郎';\n\u003C\u002Fscript>\n\n\u003Cdiv>\n  \u003Cinput type=\"text\" bind:value={displayName} \u002F>\n\u003C\u002Fdiv>\n","svelte",[28,155,156,169,192,201,207,216,259],{"__ignoreMap":42},[46,157,158,162,166],{"class":48,"line":49},[46,159,161],{"class":160},"s4DUm","\u003C",[46,163,165],{"class":164},"sOKB6","script",[46,167,168],{"class":160},">\n",[46,170,171,174,177,179,183,187,190],{"class":48,"line":70},[46,172,173],{"class":52},"  let",[46,175,176],{"class":55}," displayName",[46,178,59],{"class":52},[46,180,182],{"class":181},"stNC8"," '",[46,184,186],{"class":185},"sNQAM","太郎",[46,188,189],{"class":181},"'",[46,191,67],{"class":66},[46,193,194,197,199],{"class":48,"line":77},[46,195,196],{"class":160},"\u003C\u002F",[46,198,165],{"class":164},[46,200,168],{"class":160},[46,202,203],{"class":48,"line":91},[46,204,206],{"emptyLinePlaceholder":205},true,"\n",[46,208,209,211,214],{"class":48,"line":109},[46,210,161],{"class":160},[46,212,213],{"class":164},"div",[46,215,168],{"class":160},[46,217,219,222,225,229,232,235,238,240,244,247,251,253,256],{"class":48,"line":218},6,[46,220,221],{"class":160},"  \u003C",[46,223,224],{"class":164},"input",[46,226,228],{"class":227},"stjdN"," type",[46,230,231],{"class":160},"=",[46,233,234],{"class":181},"\"",[46,236,237],{"class":185},"text",[46,239,234],{"class":181},[46,241,243],{"class":242},"sVyDW"," bind",[46,245,246],{"class":160},":value=",[46,248,250],{"class":249},"s37wR","{",[46,252,130],{"class":66},[46,254,255],{"class":249},"}",[46,257,258],{"class":160}," \u002F>\n",[46,260,262,264,266],{"class":48,"line":261},7,[46,263,196],{"class":160},[46,265,213],{"class":164},[46,267,168],{"class":160},[11,269,271,272,278],{"id":270},"_2-constとの違い","2. ",[121,273,275],{"href":274},"\u002Fcontent\u002Fconst\u002F",[28,276,277],{},"const","との違い",[16,280,281,283,284,286],{},[28,282,277],{},"も",[28,285,6],{},"も，変数を宣言するという意味では，基本的な役割は同じであるように思われます．",[16,288,289,290,292,293,297,298,300],{},"例えば，",[28,291,6],{},"と",[121,294,295],{"href":274},[28,296,277],{},"それぞれを使って，円周率の変数を作ってみましょう．",[133,299],{},"\nその時に間違って（わざと）他の値を再代入してみると，違いが明らかになります．",[37,302,304],{"className":39,"code":303,"language":41,"meta":42,"style":42},"let PI = 3.14; \u002F\u002F 変数PIは3.14になりました\n\nPI = 3; \u002F\u002F PIに3を代入しました\n\nconsole.log('円周率：', PI); \u002F\u002F console.logは，ターミナルに実行結果を表示する関数ですが，この場合は「円周率： 3」と表示されます\n",[28,305,306,325,329,345,349],{"__ignoreMap":42},[46,307,308,310,314,316,320,322],{"class":48,"line":49},[46,309,6],{"class":52},[46,311,313],{"class":312},"sywZT"," PI",[46,315,59],{"class":52},[46,317,319],{"class":318},"sx098"," 3.14",[46,321,103],{"class":66},[46,323,324],{"class":73},"\u002F\u002F 変数PIは3.14になりました\n",[46,326,327],{"class":48,"line":70},[46,328,206],{"emptyLinePlaceholder":205},[46,330,331,335,337,340,342],{"class":48,"line":77},[46,332,334],{"class":333},"sdLwU","PI",[46,336,59],{"class":52},[46,338,339],{"class":318}," 3",[46,341,103],{"class":66},[46,343,344],{"class":73},"\u002F\u002F PIに3を代入しました\n",[46,346,347],{"class":48,"line":91},[46,348,206],{"emptyLinePlaceholder":205},[46,350,351,355,358,361,364,366,369,371,374,376,379],{"class":48,"line":109},[46,352,354],{"class":353},"slldn","console",[46,356,357],{"class":242},".",[46,359,360],{"class":312},"log",[46,362,363],{"class":66},"(",[46,365,189],{"class":181},[46,367,368],{"class":185},"円周率：",[46,370,189],{"class":181},[46,372,373],{"class":66},", ",[46,375,334],{"class":333},[46,377,378],{"class":66},"); ",[46,380,381],{"class":73},"\u002F\u002F console.logは，ターミナルに実行結果を表示する関数ですが，この場合は「円周率： 3」と表示されます\n",[37,383,385],{"className":39,"code":384,"language":41,"meta":42,"style":42},"const PI = 3.14; \u002F\u002F 定数PIは3.14になりました\n\nPI = 3; \u002F\u002F PIは定数なので，代入しようとするとエラーが発生して，処理が中断されます．\n\nconsole.log('円周率：', PI); \u002F\u002F 従って，このコードはそもそも実行されません．\n",[28,386,387,402,406,419,423],{"__ignoreMap":42},[46,388,389,391,393,395,397,399],{"class":48,"line":49},[46,390,277],{"class":52},[46,392,313],{"class":312},[46,394,59],{"class":52},[46,396,319],{"class":318},[46,398,103],{"class":66},[46,400,401],{"class":73},"\u002F\u002F 定数PIは3.14になりました\n",[46,403,404],{"class":48,"line":70},[46,405,206],{"emptyLinePlaceholder":205},[46,407,408,410,412,414,416],{"class":48,"line":77},[46,409,334],{"class":333},[46,411,59],{"class":52},[46,413,339],{"class":318},[46,415,103],{"class":66},[46,417,418],{"class":73},"\u002F\u002F PIは定数なので，代入しようとするとエラーが発生して，処理が中断されます．\n",[46,420,421],{"class":48,"line":91},[46,422,206],{"emptyLinePlaceholder":205},[46,424,425,427,429,431,433,435,437,439,441,443,445],{"class":48,"line":109},[46,426,354],{"class":353},[46,428,357],{"class":242},[46,430,360],{"class":312},[46,432,363],{"class":66},[46,434,189],{"class":181},[46,436,368],{"class":185},[46,438,189],{"class":181},[46,440,373],{"class":66},[46,442,334],{"class":333},[46,444,378],{"class":66},[46,446,447],{"class":73},"\u002F\u002F 従って，このコードはそもそも実行されません．\n",[16,449,450,451,453,454,456],{},"結局のところ，間違えて再代入している部分がある時にいち早く気づくため（エディタが警告してくれる場合が多いです），基本的には",[28,452,277],{},"が推奨されます．ただし，状態の管理や，UIと連動する変数など，明らかに宣言後に変化しうる変数については，",[28,455,6],{},"を使う必要があります．",[458,459,460],"style",{},"html pre.shiki code .sJ14y, html code.shiki .sJ14y{--shiki-default:#C792EA}html pre.shiki code .sasy7, html code.shiki .sasy7{--shiki-default:#D7DBE0}html pre.shiki code .sIpC3, html code.shiki .sIpC3{--shiki-default:#FF5874;--shiki-default-font-style:italic}html pre.shiki code .sJeqr, html code.shiki .sJeqr{--shiki-default:#D6DEEB}html pre.shiki code .s8J1n, html code.shiki .s8J1n{--shiki-default:#637777;--shiki-default-font-style:italic}html pre.shiki code .skbjf, html code.shiki .skbjf{--shiki-default:#FF5874}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .s4DUm, html code.shiki .s4DUm{--shiki-default:#7FDBCA}html pre.shiki code .sOKB6, html code.shiki .sOKB6{--shiki-default:#CAECE6}html pre.shiki code .stNC8, html code.shiki .stNC8{--shiki-default:#D9F5DD}html pre.shiki code .sNQAM, html code.shiki .sNQAM{--shiki-default:#ECC48D}html pre.shiki code .stjdN, html code.shiki .stjdN{--shiki-default:#C5E478;--shiki-default-font-style:italic}html pre.shiki code .sVyDW, html code.shiki .sVyDW{--shiki-default:#C792EA;--shiki-default-font-style:italic}html pre.shiki code .s37wR, html code.shiki .s37wR{--shiki-default:#D3423E}html pre.shiki code .sywZT, html code.shiki .sywZT{--shiki-default:#82AAFF;--shiki-default-font-style:italic}html pre.shiki code .sx098, html code.shiki .sx098{--shiki-default:#F78C6C}html pre.shiki code .sdLwU, html code.shiki .sdLwU{--shiki-default:#82AAFF}html pre.shiki code .slldn, html code.shiki .slldn{--shiki-default:#7FDBCA;--shiki-default-font-style:italic}",{"title":42,"searchDepth":70,"depth":70,"links":462},[463,467],{"id":13,"depth":70,"text":14,"children":464},[465,466],{"id":22,"depth":77,"text":23},{"id":115,"depth":77,"text":116},{"id":270,"depth":70,"text":468},"2. constとの違い","変数宣言",false,"md",{},"\u002Fdict\u002Flet",{"title":6,"description":42},"dict\u002Flet\u002Findex","xu0rRfUFzbIuWZmy4uoXGhZV7374gVVzT8RcZ5F8gcE","\u002Fcontent\u002Flet",1779273460185]