文字列から ‘px’をトリミングしようとしていますか?

私はスクリプトのプレースホルダーRXをまとめようとしています。私がする必要があるのは、この呼び出しから返された文字列の最後から
‘px’を取り除くことだけです。

$(form).children('.inputSpan').each(function() {
   var $input = $(this)
   var $padding = $input.children('.input').css('padding-left');
});

これは “6px”を返します。私は6
pxをトリミングして、それが整数であることを確認して、2ピクセルを追加してCSSルールに入力することができます。私はJavaScriptの文字列操作に新しいです。私を助けてください!

ベストアンサー

基本的なjavascript
replace()、parseInt()、またはparseFloat()関数を使用して、結果から「px」を削除することができます。どちらの方法を使うかは、正確に何が必要かによって決まります。

以下は、 “px”を取り除くためにparse replace()を使用してコードを短縮したものです。

$(form).children('.inputSpan').each(function() {
   var padding = $(this).children('.input').css('padding-left').replace("px", "");
});

上記のコードでは、 “16px”は “16”を返します。 「16.7px」は「16.7px」を返します。 “16em”は
“16em”を返します。


以下は、parse parseInt()を使って “px”などを削除してコードを短縮したものです。

$(form).children('.inputSpan').each(function() {
   var padding = parseInt($(this).children('.input').css('padding-left'));
});

上記のコードでは、 “16px”は “16”を返します。 「16.7px」は「16」を返します。 “16em”は
“16”を返します。最初のreplace()の例とは対照的に、これは “px”だけでなくすべてのテキストを削除します。


以下は、parseDouble()を使って “px”などを削除してコードを短縮したものです。

$(form).children('.inputSpan').each(function() {
   var padding = parseDouble($(this).children('.input').css('padding-left'));
});

上記のコードでは、 “16px”は “16”を返します。 「16.7px」は「16.7」を返します。 “16em”は
“16”を返します。 parseInt()とは対照的に、これは何らかの理由で小数点以下を保持します。


もちろん、将来の参照のために壊れた手順を見る理由がある場合、または他の変数が他の理由で使用されている場合は、コードを長く保存することができます。これは、parseInt()を使用した長いバージョンです。

$(form).children('.inputSpan').each(function() {
    var $input = $(this)
    var padding = $input.children('.input').css('padding-left');
    var paddingInt = parseInt(padding);
});

また、$ paddingからpaddingへの変数名の変更について説明します。
javascript変数の前にある$記号は、通常のjavascript変数とjQuery変数を区別するための一般的な使い方です。
.css()はjQueryオブジェクトを返すのではなく、単純な文字列を返すので、$ paddingを使用する理由はありません。

さらに、より複雑な検索のために、正規表現を調べることができます。

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です