質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

1回答

174閲覧

JSでのクラスの作成

Nitta

総合スコア96

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2019/02/18 04:21

編集2019/02/18 06:07

お世話になってます。
今、ちょっとしたプログラムの作成に於いて
JSでクラス作成したいものがあるんですが、
上手く動作しません。

●試した事

var mysql = require("mysql"); var express = require("express"); var request = require('request'); var crypto = require('crypto'); var bodyParser = require("body-parser"); var md5 = require('MD5'); var timestamp = Date.now().toString(); function Tester(router,connection,md5){  var hogeSub = new REST_ROUTER();  var hogeSub2 = new REST_ROUTER2();  hogeSub2.handleRoutes( hogeSub.router, hogeSub.connection, hogeSub.md5); } class REST_ROUTER{   constructor( router, connection, md5){ this.router = router; this.connection = connection; this.md5 = md5;  } } class REST_ROUTER2{ handleRoutes( router, connection, md5){ router.get("/",function(req,res){ res.json({"Message" : "NodeJS REST API Demo"}); }); } } exports.module = Tester; ```」 上記のような内容で記載し、走らせたら下記のエラーが出ます。 Typerror:rest is not constructor. (呼び出し側のクラス名)はコンストラクタではありません。 constructorの使用など問題ないかなと思うのですが、お分かりの方、居られましたらお助け下さい。 以上、宜しくお願いします。 ●やりたい形式 下記のREST_ROUTER(クラス?)を上記のような形式で記載したい。

var mysql = require("mysql");
var request = require('request');
var crypto = require('crypto');

var timestamp = Date.now().toString();

function REST_ROUTER(router,connection,md5) {
var self = this;
self.handleRoutes(router,connection,md5);
}

REST_ROUTER.prototype.handleRoutes= function(router,connection,md5) {
router.get("/",function(req,res){
res.json({"Message" : "NodeJS REST API Demo"});
});

exports.module = REST_ROUTER;

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

azuapricot

2019/02/18 04:29

うまく動作しません ✕ ○○をやってみたのですが、✕✕となってしまいます。(または▲▲といったエラーがでてしまいます) 解決方法をご教示ください ◎
azuapricot

2019/02/18 04:30

こちらからしてみれば『うまく動作する』が何かなんてわかりません。 どうなってほしい想定なんでしょう。 情報が全く足りないので丸投げといわれても仕方がありません。
guest

回答1

0

コンストラクタメソッドがありませんね。
constructor - JavaScript | MDN

上記の記事にコンストラクタメソッドの書き方がサンプル付きで載ってます。
まずはそのサンプルを見ながら移植してみてください。

投稿2019/02/18 04:29

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問