2017-10-30 4 views
0

私はJavaスクリプトとajaxを初めて使用しています。私はJSONを持っており、このJSONで出力セルを削除したいと考えています。javascriptからajaxを呼び出す際にJSONでキーを削除する

{ 
    "cells": [{ 
      "metadata": { 
       "trusted": true, 
       "collapsed": false 
      }, 
      "cell_type": "code", 
      "source": "print(\"hi\")", 
      "execution_count": 1, 
      "outputs": [{ 
       "output_type": "stream", 
       "text": "hi\n", 
       "name": "stdout" 
      }] 
     }, 
     { 
      "metadata": { 
       "trusted": true, 
       "collapsed": true 
      }, 
      "cell_type": "code", 
      "source": "", 
      "execution_count": null, 
      "outputs": [] 
     } 
    ], 
    "metadata": { 
     "kernelspec": { 
      "name": "Python [Root]", 
      "display_name": "Python [Root]", 
      "language": "python" 
     }, 
     "anaconda-cloud": {}, 
     "language_info": { 
      "pygments_lexer": "ipython3", 
      "version": "3.5.0", 
      "codemirror_mode": { 
       "version": 3, 
       "name": "ipython" 
      }, 
      "mimetype": "text/x-python", 
      "file_extension": ".py", 
      "name": "python", 
      "nbconvert_exporter": "python" 
     }, 
     "gist": { 
      "id": "", 
      "data": { 
       "description": "Untitled5.ipynb", 
       "public": true 
      } 
     } 
    }, 
    "nbformat": 4, 
    "nbformat_minor": 0 
} 

これは出力セルを削除しようとしたものです。このコードは、上記のJSONにデータを投稿します。

このコードは機能しません。ある人がajax呼び出しからキー(この場合は出力)を直接取り除いてJSONにポストする方法を教えてください。

これはjupyterノートの要旨拡張したものであると私はgithubの上の要点にそれを掲示しながら、あなたはES6を使用する場合は、削除するために、この構文を使用することができます

答えて

0
function _objectWithoutProperties(obj, key="outputs") { obj.cells.forEach(cell=>delete(cell[key])); } 
0

出力を取り除くしようとしていますoutputs

{ 
    ...data, 
    cells: data.cells.map(({ outputs, ...otherProps }) => otherProps), 
} 

注:dataは完全なオブジェクトです。

関連する問題