ホームページ  >  に質問  >  本文

JavaScript - ネイティブ JS を使用してコンピューターのタイピング効果をシミュレートする際に問題が発生しました。助けを求めてください。

<!--下のコードをコピーして貼り付け、ブラウザで実行して問題を確認してください-->
<!DOCTYPE html>
<html>
<頭>

リーリー

</head>
<body>
<p id='main'></p>
<script type="text/javascript">
var context='このプログラムは、最初にすべてのテキストを 1 つずつ入力し、3 秒後にすべてのテキストを 1 つずつ削除したいのですが、実行してみると、削除しても再度削除されることがわかります。助けてください、ありがとう! '
//console.log(a.length)
var contextLength=Number(0)
var writecontext=document.querySelector('#main')
functionloop(){

リーリー

}

loop().then(関数(値){

リーリー

})
</script>
</body>
</html>

怪我咯怪我咯2711日前485

全員に返信(4)返信します

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-19 10:18:52

    問題はlp()関数にあります

    リーリー

    ここで判定されるのはvalueですが、操作はcontextLengthなのでlp()関数は無限ループを引き起こします。

    2回削除する理由を説明します:主にslice()メソッドです

    'string'.slice(0,n);

    n が正の数の場合、通常の順序で実行されます。n が負の数の場合、n は実行中に文字列長 + n に置き換えられます。詳細については MDN を参照してください。
    そのため、lop() の最初の実行で文字列が 0 に削除された後、contextLength は 1 ずつ減り続け、その結果、視覚的に 2 つの削除が行われます

    返事
    0
  • PHP中文网

    PHP中文网2017-05-19 10:18:52

    あなたが書いたものlp函数其实是无限循环函数来的,需要把lp函数下的contextLength--改为value--,且需要把value > 0改为value >= 0

    返事
    0
  • 某草草

    某草草2017-05-19 10:18:52

    リーリー

    返事
    0
  • 怪我咯

    怪我咯2017-05-19 10:18:52

    単語を配列に保存し、配列を追加および削除します

    返事
    0
  • キャンセル返事