Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Технологии разработки клиентских WEB-приложений на языке JavaScript. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
31
  new)     Date;       JavaScript,  Date    
  Date                13       70          new Date(2013, 13, 1)   new Date(2014, 1, 1),    2014-02-01              new Date(2013, 2, 1, 0, 70)   new Date(2013, 2, 1, 1, 10)      2013-03-01T01:10:00.
Value          1  1970 00:00:00  UTC ( Unix).
DateString               Date.parse() (  IETF RFC 2822   [   ],   
ISO8601 [   ]).
Year      0  99     1900  1999.   
Month      0     11  
Day       
Hour        
Minute       
Second       
Millisecond        
Обработка текста
   
String;
RegExp.
 String            Javascript   
 JavaScript        String,          String   
      String:
32
var val = new String(string);

  String


con-
structor
    String,  

length
  
proto-
type
 prototype     
  
  String


String.fromCha
rCode()
     
  
String.fromCod
ePoint()
     
   
String.raw()
     
 
let re1 = new RegExp("abc");
 String -       
     String   
 8
  -      
 9
33
let re2 = /abc/;
        
var str = "Visit W3Schools!"; var n = str.search("W3Schools");
var str = "Visit Microsoft!"; var res = str.replace("Microsoft", "W3Schools");
 
         
             
 JavaScript          search ()  replace ().
 search ()          
 replace ()        
 search ()          
    "W3schools"  
 replace ()       
   RegExp             
               -                                   \ n),                                           
34
Структурированные данные
{ "squirrel": false, "events": ["work", "touched tree", "pizza", "running"] }
 
ArrayBuffer;
DataView;
JSON.
                                                                
                    -                                   
    JSON ( Ja­son),   JavaScript Object Notation.                    JavaScript.
JSON         JavaScript                           -          JSON.
            JSON:
JavaScript    JSON.stringify  JSON.parse            JavaScript      JSON.            
35
let string = JSON.stringify({squirrel: false, events: ["weekend"]}); console.log(string); // {"squirrel":false,"events":["weekend"]} console.log(JSON.parse(string).events); // ["weekend"]
 ArrayBuffer      
const buffer = new ArrayBuffer(8); const view = new Int32Array(buffer);
var littleEndian = (function() { var buffer = new ArrayBuffer(2); new DataView(buffer).setInt16(0, 256, true /* littleEndian */); return new Int16Array(buffer)[0] === 256; })(); console.log(littleEndian); // true or false
    
                 ArrayBuffer;            DataView,               
 ArrayBuffer ()   ArrayBuffer                 Base64    
     8-    Int32Array,   
      -       -  Endianness      DataView            
 JavaScript         64-  , DataView     64-           getUint64 ()       Number.MAX_SAFE_INTEGER,       
36
function getUint64(dataview, byteOffset, littleEndian) { // split 64-bit number into two 32-bit (4-byte) parts const left = dataview.getUint32(byteOffset, littleEndian); const right = dataview.getUint32(byteOffset+4, littleEndian); const combined = littleEndian? left + 2**32*right : 2**32*left + right; if (!Number.isSafeInteger(combined))
console.warn(combined, 'exceeds MAX_SAFE_INTEGER. Precision may
be lost');
return combined; }
      64- 
const BigInt = window.BigInt, bigThirtyTwo = BigInt(32), bigZero = Big-
Int(0);
function getUint64BigInt(dataview, byteOffset, littleEndian) { const left = BigInt(dataview.getUint32(byteOffset|0, !!littleEndian)>>>0); const right = BigInt(dataview.getUint32((byteOffset|0) + 4|0, !!littleEndi-
an)>>>0);
return littleEndian ? (right<<bigThirtyTwo)|left :
(left<<bigThirtyTwo)|right;
}
   BigInt.     BigInts        BigInts       32-    JavaScript, -    
Практическое задание
 1
                 10   
 2
   Date,         14:23:11)
          0  10,         18:7:3      18:07:03.
37
 3
const myArray = ['a', 'b']; const callback = (x) => console.log(x); myArray.forEach(callback); // Output: // 'a' // 'b'
 JSON        Ja­vaScript     
 4
  'ahb acb aeb aeeb adcb axeb'.        ahb, acb, aeb    'a',    'b'.
Асинхронность
                                                                              -         -  
       JavaScript.     -                              -               JavaScript        callback , Promises     (async-await).
Callback функции
Callback -                
                
38
     readFile(),  
readFile('some-file.txt', {encoding: 'utf8'}, (error, data) => {
if (error) {
assert.fail(error); return;
} assert.equal(data, 'The content of some-file.txt\n');
});
addAsync(3, 4) .then(result => { // success
assert.equal(result, 7); }) .catch(error => { // failure
assert.fail(error); });
      
   ,                                
Использование функции на основе Promise
Promise           Promise       JavaScript.                      then,           
      addAsync (),   Promise
     promise  2 callback 
 .then  callback,      addAsync;
 .catch  callback,    
   callback.
     addAsync  
   Promise   Promise   
39
   Promise     
function addAsync(x, y) { return new Promise(
(resolve, reject) => { // (A)
if (x === undefined || y === undefined) {
reject(new Error('Must provide two parameters'));
} else {
resolve(x + y);
}
});
}
async function fetchJsonAsync(url) { try {
const request = await fetch(url); // async const text = await request.text(); // async
return JSON.parse(text); // sync } catch (error) {
assert.fail(error); } }
   -      
    addAsync,   2
 x y.
addAsync    Promise.               A).       
resolve       );
reject       
Async функции
  async         Promises.   async 
  Promises:
       
40
function fetchJsonViaPromises(url) { return fetch(url) // async .then(request => request.text()) // async .then(text => JSON.parse(text)) // sync .catch(error => {
assert.fail(error); }); }
     fetchJsonAsync():
fetchJsonAsync('http://example.com/person.json') .then(obj => { assert.deepEqual(obj, {
first: 'Jane',
last: 'Doe', }); });
//  async  async function func1() {}
//  async  const func2 = async function () {};
//  async  const func3 = async () => {};
// async     const obj = { async m() {} };
async     async;
   async    
    Promise.             
 async    Promise   fetchJsonAsync (),  fetchJsonViaPromises ()  

       async
     Promise.
  async 
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]