保誠-保戶業務員媒合平台
HelenHuang
2022-06-09 9bdb95c9e34cef640534e5e5a1e2225a80442000
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
if (process.env.OBJECT_IMPL) global.TYPED_ARRAY_SUPPORT = false
var B = require('../').Buffer
var test = require('tape')
 
test('modifying buffer created by .slice() modifies original memory', function (t) {
  if (!B.TYPED_ARRAY_SUPPORT) return t.end()
 
  var buf1 = new B(26)
  for (var i = 0; i < 26; i++) {
    buf1[i] = i + 97 // 97 is ASCII a
  }
 
  var buf2 = buf1.slice(0, 3)
  t.equal(buf2.toString('ascii', 0, buf2.length), 'abc')
 
  buf2[0] = '!'.charCodeAt(0)
  t.equal(buf1.toString('ascii', 0, buf2.length), '!bc')
 
  t.end()
})
 
test('modifying parent buffer modifies .slice() buffer\'s memory', function (t) {
  if (!B.TYPED_ARRAY_SUPPORT) return t.end()
 
  var buf1 = new B(26)
  for (var i = 0; i < 26; i++) {
    buf1[i] = i + 97 // 97 is ASCII a
  }
 
  var buf2 = buf1.slice(0, 3)
  t.equal(buf2.toString('ascii', 0, buf2.length), 'abc')
 
  buf1[0] = '!'.charCodeAt(0)
  t.equal(buf2.toString('ascii', 0, buf2.length), '!bc')
 
  t.end()
})