6e6a1c8aee
If the replacer array contains a number wrapper we should use the toString result and not valueOf. BUG=v8:4228 LOG=N R=adamk CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1207013002 Cr-Commit-Position: refs/heads/master@{#29270}
21 lines
455 B
JavaScript
21 lines
455 B
JavaScript
// Copyright 2015 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.
|
|
|
|
// http://ecma-international.org/ecma-262/6.0/#sec-json.stringify
|
|
// Step 4.b.iii.5.f.i
|
|
|
|
var calls = 0;
|
|
|
|
var num = new Number;
|
|
num.toString = function() {
|
|
calls++;
|
|
return '';
|
|
};
|
|
num.valueOf = function() {
|
|
assertUnreachable();
|
|
};
|
|
|
|
JSON.stringify('', [num]);
|
|
assertEquals(1, calls);
|