Javascript~ EVENT処理の際に引数を渡す。

Javascript~ EVENT処理の際に引数を渡す方法。
ちなみにもっと簡略化できます。

//NG
$(function(){
    let hoge = "test";
    $("input[type='text']").on("change",(function(hoge){
        console.log(hoge);
    })(hoge));
});

//OK!
//js
function hoge(a){
    return function(){
        console.log(a +  this.value);
    };
};
document.querySelector('input[type="text"]').addEventListener("click",hoge("aaaaaaa~"),false);

//jq
$(function(){
    let hoge = function(a){
        return function(){
            console.log(a + $(this).val());
        };
    };
    $("input[type='text']").on("change",hoge("test="));
});

オブジェクト指向を勉強するのに最適なのは

オブジェクト指向を勉強するのに最適なのはjavaのような気がする。
C言語で理解するというのはベタなのかもしれないけれど、
javaが最適化と思ったりする。

javaとjavascriptとは全然違うけれど、javascriptもかなり
ゴリゴリ書こうと思えば書けます。

プログラムをどこから学べ良いだろうかと悩んでいる方は
ソフトウェア系ならjava、Web系ならjavascriptが良いじゃないだろうか。


仕事でコードのレベルを上げるべきなのかというのは
人それぞれ考え方が違うかもしれないけれど、人が多ければ多いほど
平均に合わさないといけないのではないだろうかと思うのです。

これ本当に大事なことなんです。
訳のわからないコードは負の遺産に他ならない。
自分は他人のコードを見て大体の平均に合わせて書いているつもりです。
新人が入社してきてもそれまで勉強してきたことで
理解できるレベルでコードを書いている。

なのであまりコメントは書かない。
修正に修正を加えたコードを見ているとこれは直すべきだと思う人も
いると思う、昔はそう考えていた時もあったけれど
今はそれで良いじゃないだろうかと思っています。

何故かといえば、処理がかなりの遅延になっていれば
それは直さないといけないけれど、そうではない場合は
わざわざ直す必要はないと教えられてきたこともあり
直さない。先人に敬意を払うということだ。

言語のバージョンによって直さないといけない箇所は
出てきます、そういう箇所は修正しないといけないかもしれないが
そうではない場合、直さなくて良いが
答えではないだろうか。

来週からコードサンプルに戻ります。


 

javascriptでEVENT処理レベル1

<!DOCTYPE html>
<html>
    <head>
    </head>
<body>
    <input type="text" class="zyezyezye">
    <script>
            "use strict";
            let zyezyezye = document.querySelector(".zyezyezye");
            zyezyezye.addEventListener("input",()=>{
                console.log(">おいら>>" + zyezyezye.value);
                if(zyezyezye.value=="じぇじぇじぇ")
                {
                    console.log("おいら>>キタ━━━━(゚∀゚)━━━━!!\nおいら>>じぇじぇじぇ\n<<ストーカーかよ!!");
                }
            });
            
        </script>    
</body>
</html>

jqueryばかり書いているとこういう書き方、書かなくなる。
jqueryから世の中はjavascriptやvue.jsなどへシフトしているそうだけど、未だにjqueryばかり書いている自分です。なれないといけないと思いつつ!?
別のことに力を注いでいる毎日です。

ちなみに「じぇじぇじぇ」は方言で驚きを指す言葉だとか。

javascriptを勉強中

var a = 3;
var b = 10;
var obj = {
        hoge:function(a){
            a = a + a;
            return a;
        },
        a:a = a && 5,
        b:b = b || 3
    };
    
console.log(obj.hoge(2));
console.log(obj.a);
console.log(obj.b);

上記のCodeを動かすと仕事と表示されます(笑)、4,5,10と表示されます。
何故そうなったかを考えるとキリがないのでそういうものだと
思ったほうが良いかもしれないです。

説明するとhogeはオブジェクトです。あとは変数とIF文の省略系を
記述しているだけです、実際は=もいらないですが・・・。
わかりやすく自分なりに記載したつもりです。

javascriptライブラリってこういうのが何百行も記載して成り立っていますが
概念はこういう事です。自分は基本的に概念しか覚えないのです。
何故、そうしているか・・・自分が怠惰な人間だからです。

 

javascriptでテキストファイルやCSVファイルを読み込む方法。

javascriptでテキストファイルやCSVファイルを読み込む方法は下記になります。
この他に、jqueryだとajaxを使用して読み込む方法などもありますが、あえて
javascriptで記述しています。

rt();
function rt(){
    var xmlHttp = new XMLHttpRequest();
    xmlHttp.open("GET","xxx.txt",true);
    xmlHttp.send(null);
    xmlHttp.onload = function(){
        var data = xmlHttp.responseText;
    }
}

 

jQueryの基礎1

世の中、javascriptへの原点回帰が進んでいますが
だからといって、jqueryが無くなるかといえばそうでもない気がします。

トイウコトデ、jqueryの基礎的なデモページを作成しました。
ご参考程度どうぞ。
これから毎週1回以上、プログラムのデモ的な内容をUPしていきます。
自分の勉強や復習の意味合いも兼ねています。
プログラム言語はPHP、JS、C#が主の掲載となります。

https://zip358.com/tool/demo1/demo1.php

$(function(){
    $(".alert.alert-danger").html("未記入です");
    $("input").keyup(function(){
        if($(this).val()){
            $(".alert.alert-danger").eq($("input").index(this)).html($(this).val());
        }else{
            $(".alert.alert-danger").eq($("input").index(this)).html("未記入です");
        }
    });
    $("input").blur(function(){
        if($(this).val()){
            $(".alert.alert-danger").eq($("input").index(this)).html($(this).val());
        }else{
            $(".alert.alert-danger").eq($("input").index(this)).html("未記入です");
        }
    });
    $("input").focus(function(){
        if($(this).val()){
            $(".alert.alert-danger").eq($("input").index(this)).html($(this).val());
        }else{
            $(".alert.alert-danger").eq($("input").index(this)).html("未記入です");
        }
    });    
});