タグ付けされた質問 「typeof」

Typeof(またはtypeofまたはTypeOf)は、いくつかのプログラミング言語によって提供される演算子であり、特定の変数のデータ型を決定します。これは、多くのタイプのデータを受け入れる必要があるが、提供されるデータのタイプに応じて異なるアクションを実行する必要があるプログラムの一部を構築する場合に役立ちます。


14
型チェック:typeof、GetType、またはis?
多くの人が次のコードを使用するのを見てきました。 Type t = typeof(obj1); if (t == typeof(int)) // Some code here しかし、私もあなたがこれを行うことができることを知っています: if (obj1.GetType() == typeof(int)) // Some code here またはこれ: if (obj1 is int) // Some code here 個人的には最後が一番綺麗だと思いますが、足りないものはありますか?どちらが最適ですか、それとも個人的な好みですか?
1513 c#  types  typeof  gettype 




6
完全な名前空間なしで型名を取得する
私は次のコードを持っています: return "[Inserted new " + typeof(T).ToString() + "]"; だが typeof(T).ToString() 名前空間を含むフルネームを返します とにかくクラス名を取得するだけですか(名前空間修飾子なしで?)
293 c#  namespaces  typeof 

11
JavaScript変数の型を取得するより良い方法?
JSで変数の型を取得するより良い方法はありtypeofますか?あなたがするときそれはうまく働きます: > typeof 1 "number" > typeof "hello" "string" しかし、それを試しても役に立たない: > typeof [1,2] "object" >r = new RegExp(/./) /./ > typeof r "function" 私は知っていinstanceofますが、これには事前にタイプを知っている必要があります。 > [1,2] instanceof Array true > r instanceof RegExp true もっと良い方法はありますか?
260 javascript  types  typeof 

6
C ++での「typeid」と「typeof」
C ++ typeidとtypeofC ++の違いは何ですか。これが私が知っていることです: typeidドキュメントに記載されている TYPE_INFO C ++ヘッダファイルに定義されているのTypeInfo。 typeofCのGCC拡張およびC ++ Boostライブラリで定義されています。 また、ここに、私が作成したテストコードテストがあります。ここでは、typeid期待した結果を返さないことがわかりました。どうして? main.cpp #include <iostream> #include <typeinfo> //for 'typeid' to work class Person { public: // ... Person members ... virtual ~Person() {} }; class Employee : public Person { // ... Employee members ... }; int main () { …
158 c++  typeof  typeid 

6
C ++ 11で「auto」を使用して推定されるときのラムダのタイプは何ですか?
ラムダの型は関数ポインターであるという認識がありました。以下のテストを行ったところ、間違っていることがわかりました(デモ)。 #define LAMBDA [] (int i) -> long { return 0; } int main () { long (*pFptr)(int) = LAMBDA; // ok auto pAuto = LAMBDA; // ok assert(typeid(pFptr) == typeid(pAuto)); // assertion fails ! } 上記のコードにポイントがありませんか?そうでない場合、キーワードでtypeof推定されるときのラムダ式は何autoですか?
141 c++  lambda  c++11  typeof  auto 



6
すべての変数のタイプを取得する
Rでは、スクリプトの最後でグローバル変数のリストを取得し、それらを繰り返し処理します。これが私のコードです #declare a few sample variables a<-10 b<-"Hello world" c<-data.frame() #get all global variables in script and iterate over them myGlobals<-objects() for(i in myGlobals){ print(typeof(i)) #prints 'character' } 私の問題は、変数であってもtypeof(i)常に戻りcharacter、文字変数ではないことです。forループ内で元のタイプの変数を取得するにはどうすればよいですか?ac
118 r  typeof 

4
Javaで数値がDoubleかどうかを判断する
私はJava初心者です。私は数値が次のようなものでDoubleであるかどうかを理解しようとしています: if ( typeof ( items.elementAt(1) )== Double ) { sum.add( i, items.elementAt(1)); } 誰かがこれを正しく機能させるために構文を再配置する方法を教えてもらえれば幸いです。
92 java  typeof 

16
値が関数であるかどうかのテスト
フォームの値がonsubmit関数であるかどうかをテストする必要があります。通常、形式はonsubmit="return valid();"です。これが関数であるかどうか、そしてそれが呼び出し可能かどうかを判断する方法はありますか?typeofを使用すると、それが文字列であることが返されるだけで、あまり役に立ちません。 編集:もちろん、私は「returnvalid();」を理解しています。文字列です。私はreplaceそれを「valid();」、さらには「valid()」にまで絞り込みました。どちらかが機能なのか知りたいです。 編集:これが私の問題を説明するのに役立つかもしれないいくつかのコードです: $("a.button").parents("form").submit(function() { var submit_function = $("a.button").parents("form").attr("onsubmit"); if ( submit_function && typeof( submit_function.replace(/return /,"") ) == 'function' ) { return eval(submit_function.replace(/return /,"")); } else { alert("onSubmit is not a function.\n\nIs the script included?"); return false; } } ); 編集2:これが新しいコードです。form.submit()を呼び出しても既存のonsubmitは起動されないため、まだevalを使用する必要があるようです。 var formObj = $("a.button").parents("form"); formObj.submit(function() { if ( …

5
JavaScript:引数がオブジェクトではなく配列であるかどうかを検出します(Node.JS)
がtypeof []返され'object'、配列とオブジェクトを区別したいので、引数が配列であるかどうかをどのように検出する必要がありますか。 オブジェクトが次のように見える可能性はあります{"0":"string","1":"string","length":"2"}が、実際には配列のように見えるオブジェクトである場合は、配列として表示されたくありません。 JSON.parseそしてJSON.stringify、この区別をすることができます。どうすればいいですか? Chromeと同じV8ベースのNode.JSを使用しています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.