Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
序列化内部Javascript对象(如范围)_Javascript_Range_Serialization - Fatal编程技术网

序列化内部Javascript对象(如范围)

序列化内部Javascript对象(如范围),javascript,range,serialization,Javascript,Range,Serialization,我想存储一些内部Javascript对象,比如范围,但我还没有找到保存它的方法。保存它的最好方法是什么? 我想把它序列化,但在网上什么也没找到 有没有一个图书馆可以帮助你做到这一点?jquery?如果是特定的范围,则将范围保存为相对对象,然后将其转换为简单的等效字符串 e、 g 然后,如果需要,将其转换为字符串: function getCP2String() { return _caretPosition.sC+';'+_caretPosition.sO+';'+_caretPositi

我想存储一些内部Javascript对象,比如范围,但我还没有找到保存它的方法。保存它的最好方法是什么? 我想把它序列化,但在网上什么也没找到


有没有一个图书馆可以帮助你做到这一点?jquery?

如果是特定的范围,则将范围保存为相对对象,然后将其转换为简单的等效字符串

e、 g

然后,如果需要,将其转换为字符串:

function getCP2String() {
   return _caretPosition.sC+';'+_caretPosition.sO+';'+_caretPosition.eC+';'+_caretPosition.eO;
}
如有必要,请将其反转:

function doRestoreFromString(serialTx) {   

   caretPosition.sC=serialTx.split(';')[0].split(',');
   _caretPosition.sO=serialTx.split(';')[1].split(',');
   _caretPosition.eC=serialTx.split(';')[2].split(',');
   _caretPosition.eO=serialTx.split(';')[3].split(',');

   console.log('sC='+_caretPosition.sC);
   console.log('sO='+_caretPosition.sO);
   console.log('eC='+_caretPosition.eC);
   console.log('eO='+_caretPosition.eO);

   doRestoreRange();
}
有关完整的工作示例,请参见

function doRestoreFromString(serialTx) {   

   caretPosition.sC=serialTx.split(';')[0].split(',');
   _caretPosition.sO=serialTx.split(';')[1].split(',');
   _caretPosition.eC=serialTx.split(';')[2].split(',');
   _caretPosition.eO=serialTx.split(';')[3].split(',');

   console.log('sC='+_caretPosition.sC);
   console.log('sO='+_caretPosition.sO);
   console.log('eC='+_caretPosition.eC);
   console.log('eO='+_caretPosition.eO);

   doRestoreRange();
}