[1, 55, 77, 88] // ...would return [55, 77, 88]
अतिरिक्त उदाहरण जोड़ना:
[1, 55, 77, 88, 99, 22, 33, 44] // ...would return [88, 99, 22, 33, 44]
[1] // ...would return []
arr.slice(1).slice(-5)
[1, 55, 77, 88] // ...would return [55, 77, 88]
अतिरिक्त उदाहरण जोड़ना:
[1, 55, 77, 88, 99, 22, 33, 44] // ...would return [88, 99, 22, 33, 44]
[1] // ...would return []
arr.slice(1).slice(-5)
जवाबों:
आप कॅाल कर सकते हैं:
arr.slice(Math.max(arr.length - 5, 1))
यदि आप पहले तत्व को बाहर नहीं करना चाहते हैं, तो उपयोग करें
arr.slice(Math.max(arr.length - 5, 0))
arr.slice(1).slice(-5)। आप में से कुछ भी शीर्षक पढ़ने में विफल रहे क्योंकि ओपी पहले परिणाम को छोड़ना चाहता था: |
arr.slice(Math.max(arr.length - 5, 0))?
1और नहीं है 0।
यहाँ एक है जो मैंने नहीं देखा है वह और भी छोटा है
arr.slice(1).slice(-5)
आप क्या चाहते हैं, इसके प्रमाण के लिए नीचे कोड स्निपेट चलाएँ
var arr1 = [0, 1, 2, 3, 4, 5, 6, 7],
arr2 = [0, 1, 2, 3];
document.body.innerHTML = 'ARRAY 1: ' + arr1.slice(1).slice(-5) + '<br/>ARRAY 2: ' + arr2.slice(1).slice(-5);
इसे करने का एक और तरीका है कि आप अपने ब्राउज़र से इसे करने की कोशिश कर रहे हैं, तो अगर आप एक बड़ी जावास्क्रिप्ट मिनिफ़ाइड फ़ाइल को लोड करने का मन नहीं करते हैं, तो यह https://lodash.com/docs#rest- का उपयोग करना होगा ।
_.slice(_.rest(arr), -5)
यदि आप लॉश का उपयोग कर रहे हैं, तो टेकराइट के साथ यह और भी सरल है ।
_.takeRight(arr, 5);
इसे इस्तेमाल करे:
var array = [1, 55, 77, 88, 76, 59];
var array_last_five;
array_last_five = array.slice(-5);
if (array.length < 6) {
array_last_five.shift();
}
var y = [1,2,3,4,5,6,7,8,9,10];
console.log(y.slice((y.length - 5), y.length))
तुम यह केर सकते हो!
ES6 रास्ता:
मैं तत्वों को प्राप्त करने और शेष तत्वों के लिए विनाशकारी असाइनमेंट का उपयोग करता हूं और फिर मैं स्लाइस विधि के साथ अंतिम पांच ले जाऊंगा :firstrestrest
const cutOffFirstAndLastFive = (array) => {
const [first, ...rest] = array;
return rest.slice(-5);
}
cutOffFirstAndLastFive([1, 55, 77, 88]);
console.log(
'Tests:',
JSON.stringify(cutOffFirstAndLastFive([1, 55, 77, 88])),
JSON.stringify(cutOffFirstAndLastFive([1, 55, 77, 88, 99, 22, 33, 44])),
JSON.stringify(cutOffFirstAndLastFive([1]))
);