當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript JSONExt.isObject方法代碼示例

本文整理匯總了TypeScript中@phosphor/coreutils.JSONExt.isObject方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript JSONExt.isObject方法的具體用法?TypeScript JSONExt.isObject怎麽用?TypeScript JSONExt.isObject使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在@phosphor/coreutils.JSONExt的用法示例。


在下文中一共展示了JSONExt.isObject方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: getOption

  export function getOption(name: string): string {
    if (configData) {
      return configData[name] || Private.getBodyData(name);
    }
    configData = Object.create(null);
    let found = false;

    // Use script tag if available.
    if (typeof document !== 'undefined') {
      const el = document.getElementById('jupyter-config-data');

      if (el) {
        configData = JSON.parse(el.textContent || '') as {
          [key: string]: string;
        };
        found = true;
      }
    }
    // Otherwise use CLI if given.
    if (!found && typeof process !== 'undefined') {
      try {
        const cli = minimist(process.argv.slice(2));
        const path: any = require('path');
        let fullPath = '';
        if ('jupyter-config-data' in cli) {
          fullPath = path.resolve(cli['jupyter-config-data']);
        } else if ('JUPYTER_CONFIG_DATA' in process.env) {
          fullPath = path.resolve(process.env['JUPYTER_CONFIG_DATA']);
        }
        if (fullPath) {
          /* tslint:disable */
          // Force Webpack to ignore this require.
          configData = eval('require')(fullPath) as { [key: string]: string };
          /* tslint:enable */
        }
      } catch (e) {
        console.error(e);
      }
    }

    if (!JSONExt.isObject(configData)) {
      configData = Object.create(null);
    } else {
      for (let key in configData) {
        // Quote characters are escaped, unescape them.
        configData[key] = String(configData[key])
          .split(''')
          .join('"');
      }
    }
    return configData![name] || Private.getBodyData(name);
  }
開發者ID:alexmorley,項目名稱:jupyterlab,代碼行數:52,代碼來源:pageconfig.ts

示例2: getOption

  function getOption(name: string): string {
    if (configData) {
      return configData[name] || '';
    }
    configData = Object.create(null);
    let found = false;

    // Use script tag if available.
    if (typeof document !== 'undefined') {
      let el = document.getElementById('jupyter-config-data');
      if (el) {
        configData = JSON.parse(el.textContent || '') as { [key: string]: string };
        console.log('\n\n\n******ho');
        found = true;
      }
    }
    // Otherwise use CLI if given.
    if (!found && typeof process !== 'undefined') {
      try {
        let cli = minimist(process.argv.slice(2));
        if ('jupyter-config-data' in cli) {
          let path: any = require('path');
          let fullPath = path.resolve(cli['jupyter-config-data']);
          // Force Webpack to ignore this require.
          configData = eval('require')(fullPath) as { [key: string]: string };
        }
      } catch (e) {
        console.error(e);
      }
    }

    if (!JSONExt.isObject(configData)) {
      configData = Object.create(null);
    } else {
      for (let key in configData) {
        configData[key] = String(configData[key]);
      }
    }
    console.log('\n\n\n******');
    console.log(JSON.stringify(configData, null, 2));
    return configData[name] || '';
  }
開發者ID:eskirk,項目名稱:jupyterlab,代碼行數:42,代碼來源:pageconfig.ts

示例3: validateMimeValue

  export function validateMimeValue(
    type: string,
    value: MultilineString | JSONObject
  ): boolean {
    // Check if "application/json" or "application/foo+json"
    const jsonTest = /^application\/(.*?)+\+json$/;
    const isJSONType = type === 'application/json' || jsonTest.test(type);

    let isString = (x: any) => {
      return Object.prototype.toString.call(x) === '[object String]';
    };

    // If it is an array, make sure if is not a JSON type and it is an
    // array of strings.
    if (Array.isArray(value)) {
      if (isJSONType) {
        return false;
      }
      let valid = true;
      (value as string[]).forEach(v => {
        if (!isString(v)) {
          valid = false;
        }
      });
      return valid;
    }

    // If it is a string, make sure we are not a JSON type.
    if (isString(value)) {
      return !isJSONType;
    }

    // It is not a string, make sure it is a JSON type.
    if (!isJSONType) {
      return false;
    }

    // It is a JSON type, make sure it is a valid JSON object.
    return JSONExt.isObject(value);
  }
開發者ID:afshin,項目名稱:jupyterlab,代碼行數:40,代碼來源:nbformat.ts

示例4: it

 it('should test whether a JSON value is an object', () => {
   expect(JSONExt.isObject({ a: 1 })).to.equal(true);
   expect(JSONExt.isObject({})).to.equal(true);
   expect(JSONExt.isObject([])).to.equal(false);
   expect(JSONExt.isObject(1)).to.equal(false);
 });
開發者ID:afshin,項目名稱:phosphor,代碼行數:6,代碼來源:json.spec.ts


注:本文中的@phosphor/coreutils.JSONExt.isObject方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。