cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Mengenai pemintasan rentetan

Sebagai contoh, terdapat rentetan a = "8px";
Bilangan digit dalam nombor itu tidak semestinya jika saya mahu memintas nombor itu, saya mahu menggunakan a.substring(0,a.indexOf("). p")). Saya pada asalnya mahu menggunakan a.substring( 0,-2); Tetapi selepas menyemak, saya mendapati bahawa parameter substring tidak boleh menjadi nombor negatif, tetapi saya fikir a.substring(0,a.indexOf( "p")) agak menyusahkan. Adakah terdapat kaedah pengoptimuman yang lebih langsung?

ringa_leeringa_lee2752 hari yang lalu620

membalas semua(8)saya akan balas

  • 漂亮男人

    漂亮男人2017-05-19 10:13:49

    var a="88px";
    Jika formatnya konsisten, bahagian pertama ialah nombor dan hanya nombor yang perlu diekstrak:
    parseInt(a);//88#🎜 🎜#

    balas
    0
  • 仅有的幸福

    仅有的幸福2017-05-19 10:13:49

    Gunakan peraturan biasa

    console.log('8px'.match(/(\d+)/)[0])

    balas
    0
  • 天蓬老师

    天蓬老师2017-05-19 10:13:49

    Yang pertama boleh menggunakan kaedah subrentetan: a.substring(0,a.length-2)
    Yang kedua boleh menggunakan ungkapan biasa: var a='8px';a.replace(/px$/ig,'' )

    balas
    0
  • 滿天的星座

    滿天的星座2017-05-19 10:13:49

    var a = '8px';
    a.slice(0,-2);

    balas
    0
  • 大家讲道理

    大家讲道理2017-05-19 10:13:49

    parseInt,parseFloat,slice,regexp

    balas
    0
  • PHP中文网

    PHP中文网2017-05-19 10:13:49

    var str1 = "8px",
        str2 = "88px",
        str3 = "888px",
        str4 = "8.88px";
        
    str1.replace(/(.*)px/, ""); //8
    str2.replace(/(.*)px/, ""); //88
    str3.replace(/(.*)px/, ""); //888
    str4.replace(/(.*)px/, ""); //8.88

    balas
    0
  • 巴扎黑

    巴扎黑2017-05-19 10:13:49

    Adalah paling mudah untuk menggunakan ungkapan biasa

    var reg = /([\d\.]+)px/; // 使用这个正则匹配
    var arr = ['8px', '18px', '28px', '0.08px']
    for (let i = 0, len = arr.length; i < len; i++) {
        console.log(arr[i], arr[i].match(reg)[1]);  // 结果arr[i].match(reg)[1]
    }

    balas
    0
  • 黄舟

    黄舟2017-05-19 10:13:49

    Saya terdiam untuk anda semua, bolehkah saya menggunakan parseInt, parseFloat

    balas
    0
  • Batalbalas