Title: 阿里:如何判断两个变量相等 · Issue #116 · sisterAn/JavaScript-Algorithms · GitHub
Open Graph Title: 阿里:如何判断两个变量相等 · Issue #116 · sisterAn/JavaScript-Algorithms
X Title: 阿里:如何判断两个变量相等 · Issue #116 · sisterAn/JavaScript-Algorithms
Description: 使用 API: Object.is() 方法判断两个值是否为同一个值 Object.is(x, y) Polyfill: if (!Object.is) { Object.is = function(x, y) { // SameValue algorithm if (x === y) { // Steps 1-5, 7-10 // Steps 6.b-6.e: +0 != -0 return x !== 0 || 1 / x === 1 / y; } else { /...
Open Graph Description: 使用 API: Object.is() 方法判断两个值是否为同一个值 Object.is(x, y) Polyfill: if (!Object.is) { Object.is = function(x, y) { // SameValue algorithm if (x === y) { // Steps 1-5, 7-10 // Steps 6.b-6.e: +0 != -0 retur...
X Description: 使用 API: Object.is() 方法判断两个值是否为同一个值 Object.is(x, y) Polyfill: if (!Object.is) { Object.is = function(x, y) { // SameValue algorithm if (x === y) { // Steps 1-5, 7-10 // Steps 6.b-6.e: +0 != -0 retur...
Opengraph URL: https://github.com/sisterAn/JavaScript-Algorithms/issues/116
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"阿里:如何判断两个变量相等","articleBody":"使用 API: `Object.is()` 方法判断两个值是否为同一个值\r\n\r\n```js\r\nObject.is(x, y)\r\n```\r\n\r\nPolyfill:\r\n\r\n```js\r\nif (!Object.is) {\r\n Object.is = function(x, y) {\r\n // SameValue algorithm\r\n if (x === y) { // Steps 1-5, 7-10\r\n // Steps 6.b-6.e: +0 != -0\r\n return x !== 0 || 1 / x === 1 / y;\r\n } else {\r\n // Step 6.a: NaN == NaN\r\n return x !== x \u0026\u0026 y !== y;\r\n }\r\n };\r\n}\r\n```\r\n\r\n#### 扩展:\r\n\r\nJavaScript提供三种不同的值比较操作:\r\n\r\n- 严格相等比较:使用 [===](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators#Identity) \r\n- 抽象相等比较:使用 [==](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators#Equality)\r\n- 以及 [`Object.is`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is) (ECMAScript 2015/ ES6 新特性):同值相等\r\n\r\n其中:\r\n\r\n- ===:进行相同的比较,不进行类型转换 (如果类型不同, 只是总会返回 false )\r\n- ==:执行类型转换,比较两个值是否相等\r\n- `Object.is` :与 === 相同,但是对于 `NaN` 和 `-0` 和 `+0` 进行特殊处理, `Object.is(NaN, NaN)` 为 `true` , `Object.is(+0, -0)` 为 `false`","author":{"url":"https://github.com/sisterAn","@type":"Person","name":"sisterAn"},"datePublished":"2020-10-12T22:59:05.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":3},"url":"https://github.com/116/JavaScript-Algorithms/issues/116"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:0ce463a7-da92-779a-ea2c-ac92ab1eddcb |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | 90D0:327857:E95E8A:140BFE4:696A860E |
| html-safe-nonce | 2ce2b20eb0a1a0ffab75ee26434fcf05b550298f426fa42b58168adc192ceb55 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5MEQwOjMyNzg1NzpFOTVFOEE6MTQwQkZFNDo2OTZBODYwRSIsInZpc2l0b3JfaWQiOiI0MTYyNDA5NjM5MDUzMDAyMjU0IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | ca84fdd9288a8f0262ebe54ca57b61d7251eb083b9555de8279a5b304a17ea60 |
| hovercard-subject-tag | issue:719722284 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/sisterAn/JavaScript-Algorithms/116/issue_layout |
| twitter:image | https://opengraph.githubassets.com/678c900bc4266391680acefbdf5a2770ac9e6e94b6c8f3e0a39ffbf37cfef1f0/sisterAn/JavaScript-Algorithms/issues/116 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/678c900bc4266391680acefbdf5a2770ac9e6e94b6c8f3e0a39ffbf37cfef1f0/sisterAn/JavaScript-Algorithms/issues/116 |
| og:image:alt | 使用 API: Object.is() 方法判断两个值是否为同一个值 Object.is(x, y) Polyfill: if (!Object.is) { Object.is = function(x, y) { // SameValue algorithm if (x === y) { // Steps 1-5, 7-10 // Steps 6.b-6.e: +0 != -0 retur... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | sisterAn |
| hostname | github.com |
| expected-hostname | github.com |
| None | 913560fa317c3c5a71e34f9b19253c9f09d02b4b958a86c2a56f4c8541116377 |
| turbo-cache-control | no-preview |
| go-import | github.com/sisterAn/JavaScript-Algorithms git https://github.com/sisterAn/JavaScript-Algorithms.git |
| octolytics-dimension-user_id | 19721451 |
| octolytics-dimension-user_login | sisterAn |
| octolytics-dimension-repository_id | 252061924 |
| octolytics-dimension-repository_nwo | sisterAn/JavaScript-Algorithms |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 252061924 |
| octolytics-dimension-repository_network_root_nwo | sisterAn/JavaScript-Algorithms |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 5998c30593994bf2589055aef7b22d368a499367 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width