問題タブ [strict-mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Chrome のコンソール ウィンドウで実行すると、undefined がコンソールに記録されないのはなぜですか?
厳密モードを宣言しなかった場合、グローバル オブジェクトがコンソール (ウィンドウ) に出力されます。
BUT、厳密モードが宣言されていることを考えると、 undefined がコンソールに出力されることを期待していました。
参照:
「つまり、ブラウザーでは厳密モード関数内で this を介してウィンドウ オブジェクトを参照することができなくなりました。」
更新: 期待される動作を実現するには、新しい実行コンテキストを作成し、そのコンテキスト内でこれを次のように参照する必要があります。
angularjs - TypeError: readonly プロパティに割り当てようとしました。iOS8 Safari の Angularjs アプリケーションで
モバイル アプリで「TypeError: Attempted to assign to readonly property.」が発生します。IOS 8 のみで、スタック トレースは役に立たず、Angular コードにあるようです。
これは、Angularjs コードの最上位レベルの「use strict」が原因で発生している可能性があります。私の質問は (1) なぜ IOS8 でのみ発生し始めたのですか? これはIOS8のバグですか?(2) それとも、これは IOS8 で表面化した角度のあるバグですか? (3) あるいは、厳密なモードのルールに違反しているのに、IOS8 だけがそれらをキャッチし始めたのかもしれません! 厳密モードは他の主要なブラウザーでサポートされているため、3 番目のオプションには懐疑的です。
ここ で報告された同様の問題を 1 つ見つけました。
java - オブジェクト型で厳密モードを使用してメソッドを解決できません
昨日、さまざまなタイプのパラメーターを関数に渡すときに厳密モードで質問を投稿し、解決策を見つけました。推奨されるように、私は現在 drools バージョン 5.6 を使用しています。
今、私はまだ厳格モードのエラーを抱えていますが、別のケースです。残念ながら、同じ解決策を適用することはできません。関数 creerAction() は異なるタイプのオブジェクトを返します。誰かがその場合のアイデアを持っていますか?
ここにエラーがあります
これが私のよだれファイルです。
助けてくれてありがとう。
javascript - coffeescript を含む meteor パッケージ (および継承と厳格モード)
コーヒースクリプトを使用して厳密モードで流星パッケージを構築しようとしています。主な問題は、 coffeescript meteor パッケージで説明されている共有の使用です。次のエラーが表示されるため、リンクの説明を誤解したようです。
パッケージはjavascriptでうまく機能しました。'use strict' の前にNotificationCommonの定義を置きました。
目標は
- NotificationCommon、スコープ パッケージ
- NotificationClientおよびNotificationServer : スコープ ファイル
- 届出: 輸出
これは私のバージョンですcoffeescript:
notification_common.coffee :
notification_client.coffee :
notification_server.coffee :
およびpackage.js :
どんな助けでも大歓迎です。
javascript - Function.prototype.call は、strict モード以外で typeof this を変更します。なぜ?
厳密モード:example.call('test') # prints 'string'
さもないと、example.call('test') # prints 'object'
ただし、 (ご想像のとおり)console.log(example.call('test'))
印刷test
されます
Function.call
changeがinside にtypeof 'test' === 'string'
バインドされるのはなぜですか?this
example
javascript - 厳密モードと予約語
このコードが問題ない理由:
これはそうではありませんが
インターフェイスが厳密モードでは予約語であることは知っていますが、両方の例でエラーがスローされるべきではありませんか?
meteor - SyntaxError: Meteor.npmRequire をロードしたパッケージで厳密モードでの const の使用
Meteor.npmRequire
パッケージによって提供されるNPM パッケージを必要とする Meteor アプリがありmeteorhacks:npm
ます。問題は、このパッケージが最新の ES6 機能を使用してnpmRequire
いて、使用していないことです。
この動作をオーバーライドするにはどうすればよいですか? Meteor.npmRequire
ES5 の厳密なモードに固執する代わりに、ES6 の機能を尊重することは可能ですか?