ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript のクレイジーなこと: 好きか嫌いか

JavaScript のクレイジーなこと: 好きか嫌いか

DDD
リリース: 2025-01-03 06:55:39
オリジナル
124 人が閲覧しました

JavaScript は私たち全員が大好きな言語であり、時にはキーボードを投げたくなることもあります。どこにでもあるよ!ボタンを踊らせることから、誰も説明できない理由で午前 2 時にウェブサイトを破壊することまで。

JavaScript は強力で、風変わりで、実に奇妙です。それが行う最もクレイジーなことのいくつかについて話しましょう。

1.「NaN」は数字?

そのとおりです。 「NaN」は「Not a Number」の略ですが、JavaScript ではこれを数値として分類します。それは、誰かが 「お腹は空いてないけど…でも食べに行こう。」
と言っているようなものです。

console.log(typeof NaN); // "number"
ログイン後にコピー

なぜ、JavaScript なのでしょうか?なぜ?

2. 配列を追加しますか?確かに、なぜそうではありませんか。

2 つの配列を追加するとどうなりますか? JavaScript ではエラーがスローされると思いますよね?いいえ。それはただ…それらを文字列に結合するだけです。

console.log([1, 2] + [3, 4]); // "1,23,4"
ログイン後にコピー

これは足し算ではありません。これはナンセンスです。でもまあ、それはあなたのための JavaScript です。

3. 真 真 = 2?

コンソールでこれを試してください:

console.log(true + true); // 2
ログイン後にコピー

はい。 true は 1 として扱われ、JavaScript は 「ここで数学は意味をなす!」 と考えるため、そうではありませんが、意味があると仮定しましょう。

4. 謎の未定義とヌル

未定義は、何かに値が割り当てられていないことを意味します。 null は空であることを意味します。
しかし、それらは同じなのでしょうか?いいえ。

console.log(undefined == null); // true
console.log(undefined === null); // false
ログイン後にコピー

混乱していますか?私もそうでした。そして、すべての新しい JavaScript 開発者も同様です。

5. この問題

ああ、これ。 JavaScript 学習者の悩みの種。あるコンテキストでは、これはオブジェクトです。別の場合、それは未定義です。アロー関数で?それは全く別のものです。

const obj = {
  name: "JavaScript",
  regular: function () {
    console.log(this.name);
  },
  arrow: () => {
    console.log(this.name);
  },
};

obj.regular(); // "JavaScript"
obj.arrow();   // 
ログイン後にコピー

これを理解したと思うたびに、JavaScript は敷物を下から引っ張り出します。

6. Double Equals は怠惰である

JavaScript では、== は型を常に気にするわけではありません。したがって、それはあなたのために物事を変換しようとします。それはいいですね...そうでなくなるまでは。

console.log(0 == "0"); // true
console.log(0 == []); // true
console.log([] == ""); // true
ログイン後にコピー

お願いです: 代わりに === を使用してください。いつも。

7. 無限は数字である

JavaScript で最大の数字は何ですか?無限大。最小のものより小さいものは何ですか?負の無限大。もちろん、一緒に数学をすることもできます。

console.log(Infinity - Infinity); // NaN
console.log(Infinity > 1000000);  // true
ログイン後にコピー

JavaScript は、数学が相対的であるということを無造作に曲げているだけです。

razy Things In JavaScript: Love It or Hate It

JavaScript でオブジェクトにキーが存在するかどうかを確認する方法 |タジャンマル・マクブール

JavaScript コードを深く学習して、キーが存在するかどうかを確認する方法を疑問に思ったことはありますか?このブログでは 4 つの異なる方法を説明します。

razy Things In JavaScript: Love It or Hate It

JavaScript の時間イベント: ガイド |タジャンマル・マクブール

JavaScriptってすごいですね。ウェブサイトをインタラクティブで生き生きとしたものにします。最も優れた機能の 1 つはタイム イベントです。技術的に聞こえても心配しないでください。分解してみます。

razy Things In JavaScript: Love It or Hate It

JavaScript Splice - 究極の配列メソッド |タジャンマル・マクブール

JavaScript の強力な splice メソッドをマスターしましょう。配列要素を簡単に追加、削除、置換する方法を学びます。この究極のガイドを使用してコードを簡素化してください。

JavaScript のクレイジーなこと: 好きか嫌いか tajammalmaqbool.com

とにかく私たちがそれを愛する理由

JavaScript にはさまざまな特徴がありますが…素晴らしいです。アプリケーション全体を構築したり、Web サイトをインタラクティブにしたり、ロボットを制御したりすることもできます。少しクレイジーですが、それが魅力の一部です。

JavaScript は私たちに忍耐力を教え、笑わせ (そして泣かせ)、そして最終的には仕事を終わらせてくれます。奇妙さを受け入れてください。

以上がJavaScript のクレイジーなこと: 好きか嫌いかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート