[過去ログ] JavaScript の質問用スレッド vol.125 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
487: (ワッチョイ 114b-+VVc [110.2.215.28 [上級国民]]) 2022/12/26(月)15:02 ID:pO4MU7IP0(2/5) AAS
function dofn() {

var SWmmS = rd21.selection.text;
var SWmm = parseFloat(SWmmS);
var SWpt = SWmm / ptEQ;

var rectObj = activeDocument.pathItems.rectangle(-420.94488, 297.638, 150, 100);
rectObj.filled = false;
rectObj.stroked = true;
rectObj.strokeColor = CMYKfn(0, 0, 0, 100);
rectObj.strokeWidth = SWpt;
rectObj.selected = true;
省10
488: (ワッチョイ 114b-+VVc [110.2.215.28 [上級国民]]) 2022/12/26(月)15:07 ID:pO4MU7IP0(3/5) AAS
線幅を変更するスクリプトなのですが、一応完成しました。
自分で使うだけならこれでいいのですが、他人に使ってもらう場合、ダイアログに「線幅を追加する」という項目を増やしたいと思っています。
rd21 = pg2.add("dropdownlist", [20, 40, 150, 65], ["0.1 mm", "0.12 mm", "0.15 mm", "0.2 mm", "0.25 mm", "0.3 mm", "0.4 mm", "0.5 mm", "0.6 mm"]);
のところに項目を追加していくようなコードを書くことは可能なのでしょうか?
自分自身を書き換えるコードだと思うのですが…
(削除はどうでしょうか? 例えば0.15 mmがいらないと思った場合、"0.15 mm"のを削除するコードを書くことは可能ですか?)
489
(1): (スプッッ Sd5e-HEC+ [1.75.242.231]) 2022/12/26(月)15:27 ID:oXRhIFIqd(1/2) AAS
スレ内を線幅で検索しても何も引っかからないのにこの書き出しで何か伝わると思ってるのすごいわ

線幅の配列を関数内で直書きしてるから自身を書き換えるとか面倒なことを考える必要があるわけで
関数の外に変数で宣言しとけば追加も削除もなんとでもなるでしょ
490
(1): (ワッチョイ de01-WsKb [60.103.67.153]) 2022/12/26(月)15:55 ID:gS/UmYxh0(1) AAS
確かIllustratorかなんかのスクリプトでしょ
ここ見てるほとんどはWebブラウザやnode.jsのJavaScriptは知っててもそっちは知らないと思う
文法的にはJavaScriptと同じでも出てくるオブジェクトは独自のものだろうし説明しないとわからんよ
491
(1): (ワッチョイ 114b-+VVc [110.2.215.28 [上級国民]]) 2022/12/26(月)16:14 ID:pO4MU7IP0(4/5) AAS
>>489
素人でもエディタで開かないとダメということですね。

var mm = ["0.1 mm", "0.12 mm", "0.15 mm", "0.2 mm", "0.25 mm", "0.3 mm", "0.4 mm", "0.5 mm", "0.6 mm"]
// 線幅の項目を増やしたり削除したい場合は、上の1行を書き換えてください

こう先頭に書き加えました。
492: (ワッチョイ 114b-+VVc [110.2.215.28 [上級国民]]) 2022/12/26(月)16:16 ID:pO4MU7IP0(5/5) AAS
>>490
すみません
気を付けます
493: (スプッッ Sd5e-HEC+ [1.75.242.231]) 2022/12/26(月)16:45 ID:oXRhIFIqd(2/2) AAS
>>491
意図が理解されなかったということが分かった
コメント付けるって妥協するなら>>486のままでもいいでしょ

ここの住人はadobe独自のことは詳しくないんだし他所で聞いたほうが的確な答えが返ってくるよ
そもそもここはスレ違い
494: (スップ Sd42-gE1B [49.97.104.195]) 2022/12/26(月)17:18 ID:l7z7KEaud(1) AAS
>>475
htaまだまだこれからだ
ただhighDPI環境でスケーリング200%とかだとおかしな事になった想い出
495
(1): (オッペケ Sr37-r/3v [126.208.225.253]) 2022/12/26(月)22:12 ID:LJgewTa3r(1) AAS
>>485
①chromeで↓のurlを開く
外部リンク[html]:yari-demos.prod.mdn.mozit.cloud

②chromeのコンソールを開いて↓を入力する
document.styleSheets[1].cssRules[1].cssRules[0].style.marginLeft = "50%"
496: (ワッチョイ 1df0-aH43 [58.98.96.219]) 2022/12/27(火)15:47 ID:LHsOSApx0(1) AAS
>>495
ありがとうございました
所望の動作を確認できました
JSはいろんな方法があるんですね
497
(1): (オッペケ Sr4f-XOVI [126.34.121.172]) 2023/01/02(月)12:58 ID:A6ceP6kcr(1) AAS
>>474
pythonのeelモジュールを使えば、昔のhtaっぽいことができます
498: (ワッチョイ a779-rE+U [220.150.90.192]) 2023/01/02(月)17:25 ID:V1TEslsJ0(1) AAS
>>497
OSに標準で入ってるedgeで使えるのはいいなあ
情報ありがとう
499: (ワッチョイ 8202-9yt5 [27.92.176.51]) 2023/01/04(水)19:01 ID:jNmuxM610(1/8) AAS
「無名関数」、「関数リテラル」の理解がちょっとぼやけています。

次の様なコードがあったとき、
let calcResult = function calc(a,b){
return a*b;
}

calc()
と()をつけて表せるものが普通の関数、それを変数に代入したもの
calcResult
が関数リテラルかと思っていました。
しかし、どうやら違うようで。。
500
(1): (ワッチョイ 8202-9yt5 [27.92.176.51]) 2023/01/04(水)19:01 ID:jNmuxM610(2/8) AAS
例えば以下の2つの関数があります。

■「function関数」を変数に格納
let calcResult1 = function calc(a,b){
return a*b;
}

■「無名関数」を変数に格納
let calcResult2 = function(a,b){
return a*b;
}

「無名関数」は「関数リテラル」と同義である。とさまざまな文献に記述されています。
省6
501
(2): (ワッチョイ 8202-9yt5 [27.92.176.51]) 2023/01/04(水)19:02 ID:jNmuxM610(3/8) AAS
SetInterval()
に与える引数は、関数リテラルでなくてはならないそうです。

となると、以下は誤りで、
SetInterval(calcResult1,1000);

以下なら問題ない
SetInterval(calcResult2,1000);

という理解でよろしいでしょうか?
502
(3): (ワッチョイ 8701-1zgH [60.103.77.208]) 2023/01/04(水)20:37 ID:UYb7FHhp0(1/3) AAS
外部リンク:developer.mozilla.org

外部リンク:developer.mozilla.org
リテラルに関数は含まれてないな

「関数リテラル=無名関数」が間違ってて、calcResult1 も calcResult2 は、関数リテラル。
とイコールで結んじゃうのは乱暴か
字義に従えば「無名関数」には生成時に名前をつけなかった、程度の意味しかないかと

ただ、関数式として生成された関数は変数に格納するか、でなければ他の関数の引数になるので、名前をつける意味はほぼない
結果的に関数式の関数は無名関数になることがほとんどで
503: (ワッチョイ 8701-1zgH [60.103.77.208]) 2023/01/04(水)20:40 ID:UYb7FHhp0(2/3) AAS
ここでいう「関数リテラル」は関数式で記述された関数のことで、名前があろうとなかろうと「関数リテラル」でいいんだと思う
504
(1): 502 (ワッチョイ 8701-1zgH [60.103.77.208]) 2023/01/04(水)20:53 ID:UYb7FHhp0(3/3) AAS
途中送信で変になってるからまとめ直し

>>500,501
その文脈での「関数リテラル」ってのは関数式で記述された関数のこと(>>502のリンク参照)で、名前の有無は関係ない
名前のあるcalcResult1 も 名前のないcalcResult2 も「関数リテラル」という理解でいいと思う
「無名関数」の「無名」には生成時に名前をつけなかった、程度の意味しかないかと

ただ、関数式として生成された関数は変数に格納するか、でなければ他の関数の引数になるので、名前をつける意味はほぼなくて結果的に無名関数になることがほとんどではある
505: (ワッチョイ 8202-9yt5 [27.92.176.51]) 2023/01/04(水)20:57 ID:jNmuxM610(4/8) AAS
>>502
すっごい分かりやすい。
モヤモヤしていたのがすっきりしました。
ありがとうございました。
506: (オッペケ Sr4f-JZbg [126.194.244.157]) 2023/01/04(水)21:00 ID:GLj+17iFr(1/4) AAS
調べたら自分を再帰的に呼び出す場合に名前を付けるって例があってなるほどと思った
1-
あと 496 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.022s