खोज…
फ़ाइल नाम से एक्सटेंशन निकालें
जावास्क्रिप्ट में फ़ाइल नाम से एक्सटेंशन निकालने का तेज़ और छोटा तरीका होगा:
function get_extension(filename) {
return filename.slice((filename.lastIndexOf('.') - 1 >>> 0) + 2);
}
यह उन नामों के साथ सही ढंग से काम करता है जिनमें कोई एक्सटेंशन नहीं है (जैसे myfile
) या साथ शुरू करना .
डॉट (जैसे .htaccess
):
get_extension('') // ""
get_extension('name') // ""
get_extension('name.txt') // "txt"
get_extension('.htpasswd') // ""
get_extension('name.with.many.dots.myext') // "myext"
निम्नलिखित समाधान पूर्ण पथ से फ़ाइल एक्सटेंशन निकाल सकता है:
function get_extension(path) {
var basename = path.split(/[\\/]/).pop(), // extract file name from full path ...
// (supports `\\` and `/` separators)
pos = basename.lastIndexOf('.'); // get last position of `.`
if (basename === '' || pos < 1) // if file name is empty or ...
return ""; // `.` not found (-1) or comes first (0)
return basename.slice(pos + 1); // extract extension ignoring `.`
}
get_extension('/path/to/file.ext'); // "ext"
पैसे के रूप में संख्याओं को प्रारूपित करें
धन के रूप में प्रकार Number
प्रारूप का तेज़ और छोटा तरीका, उदाहरण के लिए 1234567.89 => "1,234,567.89"
:
var num = 1234567.89,
formatted;
formatted = num.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,'); // "1,234,567.89"
किसी भी संख्या में दशमलव के समर्थन के साथ और अधिक उन्नत संस्करण [0 .. n]
, संख्या समूहों के चर आकार [0 .. x]
और विभिन्न परिसीमन प्रकार:
/**
* Number.prototype.format(n, x, s, c)
*
* @param integer n: length of decimal
* @param integer x: length of whole part
* @param mixed s: sections delimiter
* @param mixed c: decimal delimiter
*/
Number.prototype.format = function(n, x, s, c) {
var re = '\\d(?=(\\d{' + (x || 3) + '})+' + (n > 0 ? '\\D' : '$') + ')',
num = this.toFixed(Math.max(0, ~~n));
return (c ? num.replace('.', c) : num).replace(new RegExp(re, 'g'), '$&' + (s || ','));
};
12345678.9.format(2, 3, '.', ','); // "12.345.678,90"
123456.789.format(4, 4, ' ', ':'); // "12 3456:7890"
12345678.9.format(0, 3, '-'); // "12-345-679"
123456789..format(2); // "123,456,789.00"
सेट ऑब्जेक्ट प्रॉपर्टी को उसका स्ट्रिंग नाम दिया गया है
function assign(obj, prop, value) {
if (typeof prop === 'string')
prop = prop.split('.');
if (prop.length > 1) {
var e = prop.shift();
assign(obj[e] =
Object.prototype.toString.call(obj[e]) === '[object Object]'
? obj[e]
: {},
prop,
value);
} else
obj[prop[0]] = value;
}
var obj = {},
propName = 'foo.bar.foobar';
assign(obj, propName, 'Value');
// obj == {
// foo : {
// bar : {
// foobar : 'Value'
// }
// }
// }
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow