JavaScriptのDOMParserについての質問です。
DOMParserのメソッドを使うとき、
JavaScript
1const domparser = new DOMParser(); 2const doc = domparser.parseFromString(str, "text/html");
のように、new演算子を用いてインスタンス化する必要がありますが、なぜこのような設計になっているのでしょうか?
JavaScript
1const doc = DOMParser.parseFromString(str, "text/html");
のように、静的メソッドとして提供したほうが使い勝手がいいと思うのですが。
JSONオブジェクトのメソッドの場合は、
JavaScript
1const json = JSON.parse(str); 2const jsonStr = JSON.stringify(value);
のように、インスタンス化しなくても(できませんが)、静的メソッドとして使えます。
DateやXHRなら、個別のインスタンスを作成するメリットがあるのはわかりますが、DOMParserの場合はどこがメリットなのかわかりません。
JSONと同じような仕様にならなかった理由が知りたいです。
追記
「設計思想まで突っ込んだ話なのか、回答者の私見を求めているのか、どちらなのかわからない」というご指摘がありました。
もともとは設計思想(仕様策定の際、どのような意図があってインスタンスメソッドという形態をとったのか)についての質問でしたが、それは仕様策定者しか知りえない、答えるのは不可能ということであれば、回答者の方の私見を伺いたいです。
回答3件
あなたの回答
tips
プレビュー