jQueryのCSSメソッドで、複数プロパティをまとめた書き方を調べているときに、あるTIPS記事に以下のような例がありました。そこで分からない点がありましたので、質問させてください。
jQuery
1// 例1 変数に入れる 2var p_props = { 3 "color" : "red", 4 "font-size" : "16px", 5 "font-weight" : "bold" 6} 7 8// 例2 9var p_props = { 10 color : "red", 11 fontSize : "16px", 12 fontWeight : "bold" 13} 14 15// 例3 16$("p").css({ 17 "color" : "#f00", 18 "font-size" : "28px", 19 "font-weight" : "bold" 20}); 21 22// 例4 23$("p").css({ 24 color : "red", 25 font-size : "16px", 26 font-weight : "bold" 27});
- 「例1」は、CSSプロパティは文字列となるため、クオートで囲われている (この{}はグループ化)
- 「例2」は、キャメルケースを使用しているため、クオートの省略が可能 (この{}はオブジェクト)
- 「例3」は、CSSプロパティは文字列となるため、クオートで囲われている (この{}はグループ化)
- 「例4」は、このCSSプロパティは文字列では? (この{}はグループ化?)
<質問1>
「例1~4」の書き方でそれぞれ試してみたのですが、「例4」では'SyntaxError'となりました。
他の参考サイトではこのような書き方は見当たらなかったので、「例4」は単に記事上の記述ミスでしょうか。
まだ「{}」の意味や「オブジェクト」という考え方も曖昧で理解が追い付いていないので、調べている内に混乱してしまいました。
<質問2>
また、こちらのサイトに以下のようにあったのですが、自分の書いている練習用コードで "first-name" を first_name にするとエラーは出ませんでしたが、この行のみスルーされたようでした。これはjQueryだからでしょうか。
プロパティ名の前後に付けるクオート("")は、文字列が予約語ではなく、JavaScriptの名前に則っていれば、省略することができます。 上記の例"first-name"の場合はクオートが必要ですが、first_nameの場合は省略可能です。
初歩的な質問で恐縮ですが、jQueryの公式のCSSや/Types/#Stringの項目を読んでも、はっきりした答えを見つけられなかったので、熟達者の方のご意見をお伺いできると幸いです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/02/07 07:16
2020/02/07 07:21
2020/02/07 09:37