JavaScript ਐਕਸੇਸ ਸਰਵੇਰ
- ਪਿਛਲਾ ਪੰਨਾ JS ਐਕਸੇਸਸਰੀ ਸਰਚ
- ਅਗਲਾ ਪੰਨਾ JS ਐਕਸੇਸਸਰੀ ਰਾਈਟਰਨ
sort()
ਮੇਥੋਡ ਮੰਗਾਂ ਦੇ ਸਭ ਤੋਂ ਮਜ਼ਬੂਤ ਮੇਥੋਡਾਂ ਵਿੱਚੋਂ ਇੱਕ ਹੈ。
ਮੰਗਾਂ ਕਰਮਚਾਰੀ
sort()
ਮੇਥੋਡ ਐਲਫ਼ਬੇਟਿਕ ਕਰਮਚਾਰੀ ਤੋਂ ਮੰਗਾਂ ਨੂੰ ਕਰਮਚਾਰੀ ਕਰਦਾ ਹੈ:
ਇੰਸਟੈਂਸ
var fruits = ["Banana", "Orange", "Apple", "Mango"]; fruits.sort(); // fruits ਵਿੱਚ ਤੁਲਨਾ ਕਰੋ
ਵੱਲੋਂ ਤਬਦੀਲ ਕਰੋ
reverse()
ਮੇਥੋਡ ਆਰੇਜ਼ ਵਿੱਚ ਤੁਲਨਾ ਕਰਦਾ ਹੈ。
ਤੁਸੀਂ ਇਸ ਨੂੰ ਘੱਟੋ-ਘੱਟ ਕਰਨ ਲਈ ਇਸ ਨੂੰ ਵਰਤ ਸਕਦੇ ਹੋ
ਇੰਸਟੈਂਸ
var fruits = ["Banana", "Orange", "Apple", "Mango"]; fruits.sort(); // fruits ਵਿੱਚ ਤੁਲਨਾ ਕਰੋ fruits.reverse(); // ਵੱਲੋਂ ਤਬਦੀਲ ਕਰੋ
ਅੰਕ ਸੰਗਠਨ
ਮੂਲ ਤੌਰ 'ਤੇsort()
ਫੰਕਸ਼ਨ ਇਸ ਤਰ੍ਹਾਂ ਕਰਦਾ ਹੈਸਟਰਿੰਗਕਰਣ ਦੀ ਕਿਵੇਂ ਕਰਨ ਤੇ ਸੰਗਠਨ ਕਰਦਾ ਹੈ。
ਇਹ ਫੰਕਸ਼ਨ ਸਟਰਿੰਗ ਲਈ ਚੰਗਾ ਹੈ ("Apple" "Banana" ਤੋਂ ਪਹਿਲਾਂ ਹੋਵੇਗਾ).
ਲੇਕਿਨ, ਜੇਕਰ ਨੰਬਰ ਨੂੰ ਸਟਰਿੰਗ ਵਜੋਂ ਸੰਗਠਨ ਕੀਤਾ ਜਾਵੇ ਤਾਂ, "25" "100" ਤੋਂ ਵੱਡਾ ਹੋਵੇਗਾ, ਕਿਉਂਕਿ "2" "1" ਤੋਂ ਵੱਡਾ ਹੈ。
ਇਸ ਲਈsort()
ਮੇਥੋਡ ਦੁਆਰਾ ਅੰਕ ਸੰਗਠਨ ਕਰਨ ਵਿੱਚ ਗਲਤ ਨਤੀਜੇ ਪ੍ਰਾਪਤ ਹੁੰਦੇ ਹਨ。
ਅਸੀਂ ਇੱਕਅਰਥ ਫੰਕਸ਼ਨਇਸ ਸਮੱਸਿਆ ਨੂੰ ਸੁਧਾਰਨ ਲਈ:
ਇੰਸਟੈਂਸ
var points = [40, 100, 1, 5, 25, 10]; points.sort(function(a, b){return a - b});
ਇਸੇ ਤਰ੍ਹਾਂ ਆਰੇਜ਼ ਨੂੰ ਘੱਟੋ-ਘੱਟ ਕਰਨ ਲਈ ਇਸ ਤੈਕਨੀਕ ਨੂੰ ਵਰਤੋਂ ਕਰੋ:
ਇੰਸਟੈਂਸ
var points = [40, 100, 1, 5, 25, 10]; points.sort(function(a, b){return b - a});
ਅਰਥ ਫੰਕਸ਼ਨ
ਤੁਲਨਾ ਫੰਕਸ਼ਨ ਦਾ ਉਦੇਸ਼ ਇੱਕ ਵੱਖਰੀ ਕਰਣ ਤੇ ਸੰਗਠਨ ਕਰਨਾ ਹੈ。
ਤੁਲਨਾ ਫੰਕਸ਼ਨ ਨੂੰ ਨੈਗਾਟਿਵ, ਜ਼ਿਆਦਾ ਜਾਂ ਬਰਾਬਰ ਮੁੱਲ ਵਾਪਸ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ, ਇਹ ਨਿਰਭਰ ਕਰਦਾ ਹੈ ਕਿ ਪੈਰਾਮੀਟਰਾਂ ਉੱਤੇ ਕਿਵੇਂ ਹੈ:
function(a, b){return a-b}
ਜਦੋਂ... sort()
ਜਦੋਂ ਫੰਕਸ਼ਨ ਦੋ ਮੁੱਲਾਂ ਨੂੰ ਤੁਲਨਾ ਕਰਦਾ ਹੈ, ਤਾਂ ਇਹ ਮੁੱਲ ਤੁਲਨਾ ਫੰਕਸ਼ਨ ਨੂੰ ਭੇਜ ਦਿੰਦਾ ਹੈ ਅਤੇ ਮੁੱਲ ਨੂੰ ਅਨੁਸਾਰ ਕਰਦਾ ਹੈ。
ਉਦਾਹਰਣ:
ਜਦੋਂ 40 ਅਤੇ 100 ਨੂੰ ਤੁਲਨਾ ਕੀਤੀ ਜਾਵੇਗੀ ਤਾਂ...sort()
ਮੇਥੋਡ ਫੰਕਸ਼ਨ(40,100) ਨੂੰ ਬੁਲਾਵੇਗਾ。
ਇਹ ਫੰਕਸ਼ਨ 40-100 ਦਾ ਗਿਣਤੀ ਕਰਦਾ ਹੈ ਅਤੇ -60 (ਨੈਗਾਟਿਵ ਮੁੱਲ) ਵਾਪਸ ਕਰਦਾ ਹੈ。
ਸੰਗਠਨ ਫੰਕਸ਼ਨ ਫੜ੍ਹੇਗਾ 40 ਨੂੰ 100 ਤੋਂ ਘੱਟ ਦਾ ਮੁੱਲ ਮੰਨੇਗਾ。
ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੇ ਕੋਡ ਟੁਕਡੇ ਨੂੰ ਅੰਕ ਅਤੇ ਅੱਖਰਾਂ ਦੀ ਕਰਣ ਤੇ ਪਰਖ ਸਕਦੇ ਹੋ
<button onclick="myFunction1()">以字母顺序排序</button> <button onclick="myFunction2()">以数字顺序排序</button> <p id="demo"></p> <script> var points = [40, 100, 1, 5, 25, 10]; document.getElementById("demo").innerHTML = points; function myFunction1() { points.sort(); document.getElementById("demo").innerHTML = points; } function myFunction2() { points.sort(function(a, b){return a - b}); document.getElementById("demo").innerHTML = points; } </script>
ਮੰਡਲ ਨੂੰ ਰੰਗਬੇਰੇ ਕਰਨਾ
ਇੰਸਟੈਂਸ
var points = [40, 100, 1, 5, 25, 10]; points.sort(function(a, b){return 0.5 - Math.random()});
ਸਭ ਤੋਂ ਵੱਧ (ਜਾਂ ਘੱਟ) ਮੰਡਲ ਮੁੱਲ ਲੱਭਣਾ
JavaScript ਨੇ ਮੰਡਲ ਵਿੱਚ ਸਭ ਤੋਂ ਵੱਧ ਜਾਂ ਘੱਟ ਮੁੱਲ ਲੱਭਣ ਲਈ ਕੋਈ ਬੁਨਿਆਦੀ ਫੰਕਸ਼ਨ ਨਹੀਂ ਪ੍ਰਦਾਨ ਕੀਤਾ ਹੈ。
ਹਾਲਾਂਕਿ, ਮੰਡਲ ਦਾ ਸਰਵਸ਼੍ਰੇਠ ਕਰਨ ਤੋਂ ਬਾਅਦ, ਤੁਸੀਂ ਸਿੱਕੇ ਇੰਡੈਕਸ ਦੀ ਮਦਦ ਨਾਲ ਸਭ ਤੋਂ ਵੱਧ ਜਾਂ ਘੱਟ ਮੁੱਲ ਲੱਭ ਸਕਦੇ ਹੋ
ਵਧਣ ਵਾਲੀ ਕਰਨਾ:
ਇੰਸਟੈਂਸ
var points = [40, 100, 1, 5, 25, 10]; points.sort(function(a, b){return a - b}); // ਹੁਣ ਪੁਆਇੰਟਸ[0] ਸਭ ਤੋਂ ਘੱਟ ਮੁੱਲ ਰੱਖਦਾ ਹੈ // ਅਤੇ points[points.length-1] ਸਭ ਤੋਂ ਵੱਧ ਮੁੱਲ ਰੱਖਦਾ ਹੈ
ਘਟਨਾ ਕਰਨ ਵਾਲੀ ਕਰਨਾ:
ਇੰਸਟੈਂਸ
var points = [40, 100, 1, 5, 25, 10]; points.sort(function(a, b){return b - a}); // ਹੁਣ ਪੁਆਇੰਟਸ[0] ਸਭ ਤੋਂ ਵੱਧ ਮੁੱਲ ਰੱਖਦਾ ਹੈ // ਅਤੇ points[points.length-1] ਸਭ ਤੋਂ ਘੱਟ ਮੁੱਲ ਰੱਖਦਾ ਹੈ
ਅਗਰ ਤੁਸੀਂ ਸਿਰਫ਼ ਸਭ ਤੋਂ ਵੱਧ ਜਾਂ ਘੱਟ ਮੁੱਲ ਲੱਭਣਾ ਚਾਹੁੰਦੇ ਹੋ, ਤਾਂ ਮੰਡਲ ਦਾ ਸਰਵਸ਼੍ਰੇਠ ਕਰਨਾ ਫਲਦਾਰੀ ਰਹਿੰਦਾ ਹੈ。
ਮੰਡਲ ਉੱਤੇ Math.max() ਵਰਤ ਸਕਦੇ ਹੋ
ਤੁਸੀਂ Math.max.apply
ਮੰਡਲ ਵਿੱਚ ਸਭ ਤੋਂ ਵੱਧ ਮੁੱਲ ਲੱਭਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ:
ਇੰਸਟੈਂਸ
function myArrayMax(arr) { return Math.max.apply(null, arr); }
Math.max.apply([1, 2, 3])
ਬਰਾਬਰ ਹੈ Math.max(1, 2, 3)
.
ਮੰਡਲ ਉੱਤੇ Math.min() ਵਰਤ ਸਕਦੇ ਹੋ
ਤੁਸੀਂ Math.min.apply
ਮੰਡਲ ਵਿੱਚ ਸਭ ਤੋਂ ਘੱਟ ਮੁੱਲ ਲੱਭਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ:
ਇੰਸਟੈਂਸ
function myArrayMin(arr) { return Math.min.apply(null, arr); }
Math.min.apply([1, 2, 3])
ਬਰਾਬਰ ਹੈ Math.min(1, 2, 3)
.
ਮੇਰੇ Min / Max JavaScript ਮੈਥਡ
ਸਭ ਤੋਂ ਤੇਜ਼ ਸਮਾਧਾਨ ਹੱਲ ਹੈ 'ਆਪਣੇ' ਤਰੀਕੇ ਨਾਲ ਵਰਤਣਾ。
ਇਹ ਫੰਕਸ਼ਨ ਮੰਡਲ ਦੇ ਅੰਦਰ ਚੱਲਦਾ ਹੈ, ਅਤੇ ਸਭ ਤੋਂ ਵੱਧ ਮੁੱਲ ਨਾਲ ਹਰ ਮੁੱਲ ਨੂੰ ਤੁਲਨਾ ਕਰਦਾ ਹੈ:
ਮਿਸਾਲ (ਸਭ ਤੋਂ ਵੱਧ ਲੱਭਣਾ)
function myArrayMax(arr) { var len = arr.length var max = -Infinity; while (len--) { if (arr[len] > max) { max = arr[len]; } } return max; }
ਇਹ ਫੰਕਸ਼ਨ ਮੰਡਲ ਦੇ ਅੰਦਰ ਚੱਲਦਾ ਹੈ, ਅਤੇ ਸਭ ਤੋਂ ਘੱਟ ਮੁੱਲ ਨਾਲ ਹਰ ਮੁੱਲ ਨੂੰ ਤੁਲਨਾ ਕਰਦਾ ਹੈ:
ਮਿਸਾਲ (ਸਭ ਤੋਂ ਘੱਟ ਲੱਭਣਾ)
function myArrayMin(arr) { var len = arr.length var min = Infinity; while (len--) { if (arr[len] < min) { min = arr[len]; } } return min; }
ਐਕਸੇਸਸਰੀ ਆਰਰੇ ਕਰਨਾ
JavaScript ਐਕਸੇਸਸਰੀ ਸ਼ਾਮਲ ਹੁੰਦੀ ਹੈ:
ਇੰਸਟੈਂਸ
var cars = [ {type:"Volvo", year:2016}, {type:"Saab", year:2001}, {type:"BMW", year:2010}];
ਚਾਹੇ ਆਬਜੈਕਟ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਤਰ੍ਹਾਂ ਦੇ ਡਾਟਾ ਟਾਈਪ ਦੇ ਪ੍ਰਾਪਰਟੀ ਹੋਣsort()
ਇਹ ਮੰਥਰ ਹੁਣ ਵੀ ਅਕਸਰ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਕਿ ਇਕੱਲੇ ਆਰਰੇ ਨੂੰ ਕਰਨ ਵਾਸਤੇ:
ਸਮਾਧਾਨ ਇਹ ਹੈ ਕਿ ਤੁਲਨਾ ਫੰਕਸ਼ਨ ਦੇ ਮਾਧਿਅਮ ਨਾਲ ਪ੍ਰਾਪਰਟੀ ਮੁੱਲਾਂ ਨੂੰ ਤੁਲਨਾ ਕੀਤਾ ਜਾਵੇ:
ਇੰਸਟੈਂਸ
cars.sort(function(a, b){return a.year - b.year});
ਸਟਰਿੰਗ ਪ੍ਰਾਪਰਟੀ ਤੁਲਨਾ ਕਰਨਾ ਕਾਫੀ ਜ਼ਿਆਦਾ ਜ਼ਰੂਰੀ ਹੈ:
ਇੰਸਟੈਂਸ
cars.sort(function(a, b){ var x = a.type.toLowerCase(); var y = b.type.toLowerCase(); if (x < y) {return -1;} if (x > y) {return 1;} return 0; });
- ਪਿਛਲਾ ਪੰਨਾ JS ਐਕਸੇਸਸਰੀ ਸਰਚ
- ਅਗਲਾ ਪੰਨਾ JS ਐਕਸੇਸਸਰੀ ਰਾਈਟਰਨ