mirror of
				https://github.com/tc39/test262.git
				synced 2025-10-31 11:44:31 +01:00 
			
		
		
		
	* Automated assertion message update: Array.from * Automated assertion message update: Array.isArray * Automated assertion message update: Array length property * Automated assertion message update: Array.of * Automated assertion message update: Array * Automated assertion message update: Array.prototype.at * Automated assertion message update: Array.prototype.concat * Automated assertion message update: compareArray -> assert.compareArray
		
			
				
	
	
		
			40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| // Copyright (c) 2014 the V8 project authors. All rights reserved.
 | |
| // Use of this source code is governed by a BSD-style license that can be
 | |
| // found in the LICENSE file.
 | |
| /*---
 | |
| esid: sec-array.from
 | |
| description: >
 | |
|   If this is a constructor, and items doesn't have an @@iterator,
 | |
|   returns a new instance of this
 | |
| info: |
 | |
|   22.1.2.1 Array.from ( items [ , mapfn [ , thisArg ] ] )
 | |
| 
 | |
|   4. Let usingIterator be GetMethod(items, @@iterator).
 | |
|   ...
 | |
|   6. If usingIterator is not undefined, then
 | |
|   ...
 | |
|   12. If IsConstructor(C) is true, then
 | |
|     a. Let A be Construct(C, «len»).
 | |
|   13. Else,
 | |
|     a. Let A be ArrayCreate(len).
 | |
|   ...
 | |
|   19. Return A.
 | |
| ---*/
 | |
| 
 | |
| var result;
 | |
| 
 | |
| function MyCollection() {
 | |
|   this.args = arguments;
 | |
| }
 | |
| 
 | |
| result = Array.from.call(MyCollection, {
 | |
|   length: 42
 | |
| });
 | |
| 
 | |
| assert.sameValue(result.args.length, 1, 'The value of result.args.length is expected to be 1');
 | |
| assert.sameValue(result.args[0], 42, 'The value of result.args[0] is expected to be 42');
 | |
| assert(
 | |
|   result instanceof MyCollection,
 | |
|   'The result of evaluating (result instanceof MyCollection) is expected to be true'
 | |
| );
 |