[javascript] جافا سكريبت فرم / شريحة / تقليم آخر حرف في السلسلة


9 Answers

يمكنك استخدام شريحة ! عليك فقط للتأكد من أنك تعرف كيفية استخدامها. تشير #s إيجابية إلى البداية ، الأرقام السالبة هي نسبة إلى النهاية.

js>"12345.00".slice(0,-1)
12345.0
Question

لدي سلسلة ، 12345.00 ، وأريد أن 12345.0 .

لقد نظرت في trim ، ولكن يبدو أنها slice فقط مسافة بيضاء slice لا أرى كيف يمكن أن يعمل هذا. أي اقتراحات؟




استخدم regex:

var aStr = "12345.00";
aStr = aStr.replace(/.$/, '');



جرب هذا:

<script>
    var x="foo_foo_foo_bar";
    for (var i=0; i<=x.length; i++) {
        if (x[i]=="_" && x[i+1]=="b") {
            break;
        }
        else {
            document.write(x[i]);
        }
    }
</script>

يمكنك أيضًا تجربة مثال العمل المباشر على http://jsfiddle.net/informativejavascript/F7WTn/87/ .







جرب هذا:

var myString = "Hello World!";
myString.slice(0, -1);



أسهل طريقة هي استخدام طريقة slice للسلسلة ، والتي تسمح بالمواقع السلبية (المقابلة للإزاحات من نهاية السلسلة):

var s = "your string";
var withoutLastFourChars = s.slice(0, -4);

إذا كنت بحاجة إلى شيء أكثر عمومية لإزالة كل شيء بعد (بما في ذلك) علامة الشرطة السفلية الأخيرة ، فيمكنك القيام بما يلي (طالما أن s يضمن أن يحتوي على تسطير واحد على الأقل):

var s = "your_string";
var withoutLastChunk = s.slice(0, s.lastIndexOf("_"));
// withoutLastChunk == "your"



استخدم السلسلة الفرعية للحصول على كل شيء إلى يسار _bar. ولكن عليك أولاً الحصول على instr من _bar في السلسلة:

str.substring(3, 7);

3 هي أن البداية و 7 هي الطول.




var str = "test!";
var newStr = str.slice(0,-1); //test



باستخدام وظيفة شريحة جافا سكريبت:

var string = 'foo_bar';
string = string.slice(0, -4); // Slice off last four characters here

يمكن استخدام هذا لإزالة "_bar" في نهاية السلسلة ، بأي طول.




كيف حول:

var myString = "12345.00";
myString.substring(0, myString.length - 1);



Related