検索

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

JavaScript + 演算子

コンソール内のjs

[[]][0] これでエラーが報告されないのはなぜですか
[] これでエラーが報告されますか

我想大声告诉你我想大声告诉你2752日前416

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

  • 迷茫

    迷茫2017-05-19 10:22:53

    ++[[]][0]:
    [[]]是一个只包含一个空数组的数组,那么根据运算符优先级,[] > (prefix)++,运算[[]][0],得到一个空数组Array(0),是一个对象,并且是数组中的一个值,符合左值的条件.之后进行(prefix)++运算,由于++运算将执行数据类型转换(PS:Javascript中具体的数据类型转换太复杂了,我就不展开了),这里Array[0]将转换成0,结果++1をゲット

    詳細については、コンソール出力を参照してください:

    リーリー

    ++[]: lvalue は空の配列であり、正当な lvalue ではないため、エラーが報告されます。

    左値とは:

    左辺値は、式が代入演算子の左側にのみ現れることを意味する古い用語です。 JavaScript では、変数、オブジェクトのプロパティ、配列要素はすべて左辺値です。

    返事
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-19 10:22:53

    私は以前にこの質問に回答し、直接リンクを投稿しました:

    jsの型変換の問題

    返事
    0
  • キャンセル返事