From de5c456ebded0e038adbf23db34cc290c8829180 Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 14:49:24 +0100 Subject: unslug pl: move --- .../global_objects/array/concat/index.html | 71 +++ .../global_objects/array/copywithin/index.html | 181 ++++++++ .../global_objects/array/entries/index.html | 77 ++++ .../global_objects/array/every/index.html | 89 ++++ .../reference/global_objects/array/fill/index.html | 185 ++++++++ .../global_objects/array/filter/index.html | 150 +++++++ .../reference/global_objects/array/find/index.html | 278 ++++++++++++ .../global_objects/array/findindex/index.html | 214 +++++++++ .../reference/global_objects/array/flat/index.html | 173 ++++++++ .../global_objects/array/foreach/index.html | 104 +++++ .../reference/global_objects/array/from/index.html | 248 +++++++++++ .../global_objects/array/includes/index.html | 110 +++++ .../reference/global_objects/array/index.html | 279 ++++++++++++ .../global_objects/array/indexof/index.html | 95 ++++ .../global_objects/array/isarray/index.html | 139 ++++++ .../reference/global_objects/array/join/index.html | 50 +++ .../reference/global_objects/array/keys/index.html | 120 +++++ .../global_objects/array/lastindexof/index.html | 114 +++++ .../global_objects/array/length/index.html | 53 +++ .../reference/global_objects/array/map/index.html | 93 ++++ .../reference/global_objects/array/of/index.html | 92 ++++ .../reference/global_objects/array/pop/index.html | 138 ++++++ .../reference/global_objects/array/push/index.html | 51 +++ .../global_objects/array/reduce/index.html | 300 +++++++++++++ .../global_objects/array/reduceright/index.html | 344 +++++++++++++++ .../global_objects/array/reverse/index.html | 55 +++ .../global_objects/array/shift/index.html | 48 ++ .../global_objects/array/slice/index.html | 99 +++++ .../reference/global_objects/array/some/index.html | 110 +++++ .../reference/global_objects/array/sort/index.html | 122 ++++++ .../global_objects/array/splice/index.html | 86 ++++ .../global_objects/array/tolocalestring/index.html | 128 ++++++ .../global_objects/array/tosource/index.html | 62 +++ .../global_objects/array/tostring/index.html | 42 ++ .../global_objects/array/unshift/index.html | 56 +++ .../global_objects/array/values/index.html | 84 ++++ .../global_objects/arraybuffer/index.html | 222 ++++++++++ .../global_objects/bigint/asintn/index.html | 79 ++++ .../global_objects/bigint/asuintn/index.html | 78 ++++ .../reference/global_objects/bigint/index.html | 293 +++++++++++++ .../global_objects/bigint/tostring/index.html | 95 ++++ .../global_objects/bigint/valueof/index.html | 59 +++ .../reference/global_objects/boolean/index.html | 111 +++++ .../global_objects/boolean/tosource/index.html | 51 +++ .../global_objects/boolean/tostring/index.html | 41 ++ .../global_objects/boolean/valueof/index.html | 43 ++ .../reference/global_objects/dataview/index.html | 118 +++++ .../global_objects/date/getdate/index.html | 47 ++ .../global_objects/date/getday/index.html | 47 ++ .../global_objects/date/getfullyear/index.html | 47 ++ .../global_objects/date/gethours/index.html | 46 ++ .../global_objects/date/getmilliseconds/index.html | 44 ++ .../global_objects/date/getminutes/index.html | 48 ++ .../global_objects/date/getmonth/index.html | 46 ++ .../global_objects/date/getseconds/index.html | 46 ++ .../global_objects/date/gettime/index.html | 47 ++ .../date/gettimezoneoffset/index.html | 35 ++ .../global_objects/date/getutcdate/index.html | 45 ++ .../global_objects/date/getutcday/index.html | 45 ++ .../global_objects/date/getutcfullyear/index.html | 44 ++ .../global_objects/date/getutchours/index.html | 44 ++ .../date/getutcmilliseconds/index.html | 44 ++ .../global_objects/date/getutcminutes/index.html | 44 ++ .../global_objects/date/getutcmonth/index.html | 44 ++ .../global_objects/date/getutcseconds/index.html | 44 ++ .../global_objects/date/getyear/index.html | 97 ++++ .../reference/global_objects/date/index.html | 138 ++++++ .../reference/global_objects/date/now/index.html | 43 ++ .../reference/global_objects/date/parse/index.html | 74 ++++ .../global_objects/date/setdate/index.html | 43 ++ .../global_objects/date/setfullyear/index.html | 58 +++ .../global_objects/date/sethours/index.html | 66 +++ .../global_objects/date/setmilliseconds/index.html | 45 ++ .../global_objects/date/setminutes/index.html | 60 +++ .../global_objects/date/setmonth/index.html | 56 +++ .../global_objects/date/setseconds/index.html | 56 +++ .../global_objects/date/settime/index.html | 46 ++ .../global_objects/date/setutcdate/index.html | 45 ++ .../global_objects/date/setutcfullyear/index.html | 57 +++ .../global_objects/date/setutchours/index.html | 62 +++ .../date/setutcmilliseconds/index.html | 45 ++ .../global_objects/date/setutcminutes/index.html | 57 +++ .../global_objects/date/setutcmonth/index.html | 52 +++ .../global_objects/date/setutcseconds/index.html | 52 +++ .../global_objects/date/setyear/index.html | 52 +++ .../global_objects/date/togmtstring/index.html | 44 ++ .../global_objects/date/tojson/index.html | 70 +++ .../date/tolocaledatestring/index.html | 55 +++ .../global_objects/date/tolocalestring/index.html | 51 +++ .../date/tolocaletimestring/index.html | 52 +++ .../global_objects/date/tosource/index.html | 49 +++ .../global_objects/date/tostring/index.html | 49 +++ .../global_objects/date/toutcstring/index.html | 43 ++ .../reference/global_objects/date/utc/index.html | 69 +++ .../global_objects/date/valueof/index.html | 46 ++ .../reference/global_objects/decodeuri/index.html | 39 ++ .../global_objects/decodeuricomponent/index.html | 41 ++ .../reference/global_objects/encodeuri/index.html | 72 +++ .../global_objects/encodeuricomponent/index.html | 38 ++ .../global_objects/error/columnnumber/index.html | 81 ++++ .../global_objects/error/filename/index.html | 49 +++ .../reference/global_objects/error/index.html | 246 +++++++++++ .../global_objects/error/linenumber/index.html | 57 +++ .../global_objects/error/message/index.html | 108 +++++ .../reference/global_objects/error/name/index.html | 109 +++++ .../global_objects/error/stack/index.html | 127 ++++++ .../global_objects/error/tosource/index.html | 60 +++ .../global_objects/error/tostring/index.html | 98 +++++ .../reference/global_objects/escape/index.html | 120 +++++ .../reference/global_objects/evalerror/index.html | 87 ++++ .../global_objects/function/apply/index.html | 289 ++++++++++++ .../global_objects/function/arguments/index.html | 41 ++ .../global_objects/function/bind/index.html | 332 ++++++++++++++ .../global_objects/function/caller/index.html | 69 +++ .../global_objects/function/displayname/index.html | 119 +++++ .../reference/global_objects/function/index.html | 237 ++++++++++ .../global_objects/function/length/index.html | 42 ++ .../global_objects/function/tostring/index.html | 56 +++ .../reference/global_objects/generator/index.html | 178 ++++++++ .../javascript/reference/global_objects/index.html | 193 ++++++++ .../reference/global_objects/infinity/index.html | 35 ++ .../reference/global_objects/isfinite/index.html | 56 +++ .../reference/global_objects/isnan/index.html | 53 +++ .../reference/global_objects/json/index.html | 147 +++++++ .../reference/global_objects/map/clear/index.html | 87 ++++ .../reference/global_objects/map/delete/index.html | 85 ++++ .../global_objects/map/entries/index.html | 128 ++++++ .../global_objects/map/foreach/index.html | 104 +++++ .../reference/global_objects/map/get/index.html | 80 ++++ .../reference/global_objects/map/has/index.html | 85 ++++ .../reference/global_objects/map/index.html | 458 +++++++++++++++++++ .../reference/global_objects/map/keys/index.html | 78 ++++ .../reference/global_objects/map/set/index.html | 96 ++++ .../reference/global_objects/map/size/index.html | 65 +++ .../reference/global_objects/map/values/index.html | 77 ++++ .../reference/global_objects/math/abs/index.html | 54 +++ .../reference/global_objects/math/acos/index.html | 59 +++ .../reference/global_objects/math/asin/index.html | 58 +++ .../reference/global_objects/math/atan/index.html | 51 +++ .../reference/global_objects/math/atan2/index.html | 63 +++ .../reference/global_objects/math/ceil/index.html | 49 +++ .../reference/global_objects/math/cos/index.html | 52 +++ .../reference/global_objects/math/e/index.html | 40 ++ .../reference/global_objects/math/exp/index.html | 49 +++ .../reference/global_objects/math/floor/index.html | 46 ++ .../reference/global_objects/math/index.html | 94 ++++ .../reference/global_objects/math/ln10/index.html | 42 ++ .../reference/global_objects/math/ln2/index.html | 40 ++ .../reference/global_objects/math/log/index.html | 54 +++ .../global_objects/math/log10e/index.html | 44 ++ .../reference/global_objects/math/log2e/index.html | 42 ++ .../reference/global_objects/math/max/index.html | 43 ++ .../reference/global_objects/math/min/index.html | 44 ++ .../reference/global_objects/math/pi/index.html | 40 ++ .../reference/global_objects/math/pow/index.html | 49 +++ .../global_objects/math/random/index.html | 67 +++ .../reference/global_objects/math/round/index.html | 50 +++ .../reference/global_objects/math/sign/index.html | 118 +++++ .../reference/global_objects/math/sin/index.html | 51 +++ .../reference/global_objects/math/sqrt/index.html | 46 ++ .../global_objects/math/sqrt1_2/index.html | 39 ++ .../reference/global_objects/math/sqrt2/index.html | 41 ++ .../reference/global_objects/math/tan/index.html | 53 +++ .../reference/global_objects/nan/index.html | 45 ++ .../reference/global_objects/null/index.html | 134 ++++++ .../global_objects/number/epsilon/index.html | 76 ++++ .../reference/global_objects/number/index.html | 111 +++++ .../global_objects/number/isinteger/index.html | 88 ++++ .../global_objects/number/isnan/index.html | 108 +++++ .../global_objects/number/max_value/index.html | 35 ++ .../global_objects/number/min_value/index.html | 39 ++ .../reference/global_objects/number/nan/index.html | 48 ++ .../number/negative_infinity/index.html | 53 +++ .../number/positive_infinity/index.html | 57 +++ .../global_objects/number/toexponential/index.html | 53 +++ .../global_objects/number/tofixed/index.html | 61 +++ .../number/tolocalestring/index.html | 182 ++++++++ .../global_objects/number/toprecision/index.html | 56 +++ .../global_objects/number/tostring/index.html | 59 +++ .../global_objects/object/assign/index.html | 307 +++++++++++++ .../global_objects/object/constructor/index.html | 49 +++ .../global_objects/object/freeze/index.html | 201 +++++++++ .../object/getownpropertydescriptor/index.html | 121 +++++ .../object/hasownproperty/index.html | 150 +++++++ .../reference/global_objects/object/index.html | 212 +++++++++ .../global_objects/object/proto/index.html | 193 ++++++++ .../global_objects/object/seal/index.html | 165 +++++++ .../object/tolocalestring/index.html | 35 ++ .../global_objects/object/tosource/index.html | 73 ++++ .../global_objects/object/tostring/index.html | 98 +++++ .../global_objects/object/valueof/index.html | 63 +++ .../reference/global_objects/parsefloat/index.html | 68 +++ .../reference/global_objects/parseint/index.html | 112 +++++ .../reference/global_objects/promise/index.html | 256 +++++++++++ .../reference/global_objects/proxy/index.html | 401 +++++++++++++++++ .../global_objects/proxy/proxy/apply/index.html | 117 +++++ .../global_objects/proxy/proxy/index.html | 78 ++++ .../reference/global_objects/rangeerror/index.html | 162 +++++++ .../global_objects/regexp/exec/index.html | 144 ++++++ .../global_objects/regexp/global/index.html | 35 ++ .../global_objects/regexp/ignorecase/index.html | 35 ++ .../reference/global_objects/regexp/index.html | 383 ++++++++++++++++ .../global_objects/regexp/lastmatch/index.html | 54 +++ .../global_objects/regexp/source/index.html | 29 ++ .../global_objects/regexp/test/index.html | 53 +++ .../global_objects/regexp/tosource/index.html | 47 ++ .../global_objects/regexp/tostring/index.html | 46 ++ .../reference/global_objects/set/add/index.html | 134 ++++++ .../reference/global_objects/set/clear/index.html | 124 ++++++ .../reference/global_objects/set/delete/index.html | 102 +++++ .../reference/global_objects/set/index.html | 486 +++++++++++++++++++++ .../global_objects/string/anchor/index.html | 56 +++ .../reference/global_objects/string/big/index.html | 43 ++ .../global_objects/string/blink/index.html | 50 +++ .../global_objects/string/bold/index.html | 45 ++ .../global_objects/string/charat/index.html | 68 +++ .../global_objects/string/charcodeat/index.html | 42 ++ .../global_objects/string/concat/index.html | 44 ++ .../global_objects/string/fontcolor/index.html | 50 +++ .../global_objects/string/fontsize/index.html | 48 ++ .../global_objects/string/fromcharcode/index.html | 50 +++ .../global_objects/string/fromcodepoint/index.html | 149 +++++++ .../reference/global_objects/string/index.html | 194 ++++++++ .../global_objects/string/italics/index.html | 45 ++ .../global_objects/string/link/index.html | 43 ++ .../global_objects/string/repeat/index.html | 166 +++++++ .../global_objects/string/search/index.html | 49 +++ .../global_objects/string/slice/index.html | 51 +++ .../global_objects/string/small/index.html | 37 ++ .../global_objects/string/strike/index.html | 44 ++ .../reference/global_objects/string/sub/index.html | 44 ++ .../global_objects/string/substr/index.html | 66 +++ .../global_objects/string/substring/index.html | 90 ++++ .../reference/global_objects/string/sup/index.html | 45 ++ .../global_objects/string/tolowercase/index.html | 40 ++ .../global_objects/string/tosource/index.html | 41 ++ .../global_objects/string/tostring/index.html | 41 ++ .../global_objects/string/touppercase/index.html | 38 ++ .../global_objects/string/valueof/index.html | 40 ++ .../reference/global_objects/symbol/index.html | 227 ++++++++++ .../global_objects/syntaxerror/index.html | 100 +++++ .../global_objects/uint16array/index.html | 224 ++++++++++ .../reference/global_objects/undefined/index.html | 40 ++ 243 files changed, 22417 insertions(+) create mode 100644 files/pl/web/javascript/reference/global_objects/array/concat/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/copywithin/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/entries/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/every/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/fill/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/filter/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/find/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/findindex/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/flat/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/foreach/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/from/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/includes/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/indexof/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/isarray/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/join/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/keys/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/lastindexof/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/length/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/map/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/of/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/pop/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/push/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/reduce/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/reduceright/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/reverse/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/shift/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/slice/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/some/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/sort/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/splice/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/tolocalestring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/tosource/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/tostring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/unshift/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/array/values/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/arraybuffer/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/bigint/asintn/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/bigint/asuintn/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/bigint/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/bigint/tostring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/bigint/valueof/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/boolean/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/boolean/tosource/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/boolean/tostring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/boolean/valueof/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/dataview/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getdate/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getday/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getfullyear/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/gethours/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getmilliseconds/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getminutes/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getmonth/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getseconds/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/gettime/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/gettimezoneoffset/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getutcdate/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getutcday/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getutcfullyear/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getutchours/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getutcmilliseconds/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getutcminutes/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getutcmonth/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getutcseconds/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/getyear/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/now/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/parse/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setdate/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setfullyear/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/sethours/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setmilliseconds/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setminutes/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setmonth/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setseconds/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/settime/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setutcdate/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setutcfullyear/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setutchours/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setutcmilliseconds/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setutcminutes/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setutcmonth/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setutcseconds/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/setyear/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/togmtstring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/tojson/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/tolocaledatestring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/tolocalestring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/tolocaletimestring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/tosource/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/tostring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/toutcstring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/utc/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/date/valueof/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/decodeuri/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/decodeuricomponent/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/encodeuri/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/encodeuricomponent/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/error/columnnumber/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/error/filename/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/error/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/error/linenumber/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/error/message/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/error/name/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/error/stack/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/error/tosource/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/error/tostring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/escape/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/evalerror/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/function/apply/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/function/arguments/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/function/bind/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/function/caller/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/function/displayname/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/function/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/function/length/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/function/tostring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/generator/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/infinity/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/isfinite/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/isnan/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/json/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/clear/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/delete/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/entries/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/foreach/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/get/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/has/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/keys/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/set/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/size/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/map/values/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/abs/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/acos/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/asin/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/atan/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/atan2/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/ceil/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/cos/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/e/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/exp/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/floor/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/ln10/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/ln2/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/log/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/log10e/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/log2e/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/max/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/min/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/pi/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/pow/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/random/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/round/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/sign/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/sin/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/sqrt/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/sqrt1_2/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/sqrt2/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/math/tan/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/nan/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/null/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/epsilon/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/isinteger/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/isnan/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/max_value/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/min_value/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/nan/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/negative_infinity/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/positive_infinity/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/toexponential/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/tofixed/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/tolocalestring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/toprecision/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/number/tostring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/assign/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/constructor/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/freeze/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/getownpropertydescriptor/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/hasownproperty/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/proto/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/seal/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/tolocalestring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/tosource/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/tostring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/object/valueof/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/parsefloat/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/parseint/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/promise/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/proxy/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/proxy/proxy/apply/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/proxy/proxy/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/rangeerror/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/regexp/exec/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/regexp/global/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/regexp/ignorecase/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/regexp/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/regexp/lastmatch/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/regexp/source/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/regexp/test/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/regexp/tosource/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/regexp/tostring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/set/add/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/set/clear/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/set/delete/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/set/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/anchor/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/big/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/blink/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/bold/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/charat/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/charcodeat/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/concat/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/fontcolor/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/fontsize/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/fromcharcode/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/fromcodepoint/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/italics/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/link/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/repeat/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/search/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/slice/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/small/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/strike/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/sub/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/substr/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/substring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/sup/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/tolowercase/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/tosource/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/tostring/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/touppercase/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/string/valueof/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/symbol/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/syntaxerror/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/uint16array/index.html create mode 100644 files/pl/web/javascript/reference/global_objects/undefined/index.html (limited to 'files/pl/web/javascript/reference/global_objects') diff --git a/files/pl/web/javascript/reference/global_objects/array/concat/index.html b/files/pl/web/javascript/reference/global_objects/array/concat/index.html new file mode 100644 index 0000000000..014219e1d9 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/concat/index.html @@ -0,0 +1,71 @@ +--- +title: Array.prototype.concat() +slug: Web/JavaScript/Referencje/Obiekty/Array/concat +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/concat +--- +
{{JSRef("Global_Objects", "Array")}}
+ +

Podsumowanie

+ +

Zwraca nową tablicę złożoną z tablicy, na której wywołano tę metodę, połączonej z innymi podanymi tablicami lub wartościami.

+ +

Składnia

+ +
var new_array = old_array.concat(wartość1[, wartość2[, ...[, wartośćN]]])
+ +

Parametry

+ +
+
wartość + N +  
+
Tablice lub wartości do dołączenia do tablicy, na której wywołana została metoda concat.
+
+ +

Opis

+ +

concat nie zmienia oryginalnej tablicy, lecz zwraca jej kopię "o jednym poziomie głębokości" zawierającą te same elementy wspólne co pierwotna tablica. Elementy oryginalnej tablicy są kopiowane do nowej tablicy następująco:

+ + + + + +

Operacje wykonywane na nowej tablicy nie wpłyną w żaden sposób na oryginalną tablicę i na odwrót.

+ +

Przykłady

+ +

Przykład: Połączenie dwóch tablic

+ +

Następujący kod łączy dwie tablice:

+ +
alpha = new Array("a", "b", "c");
+numeric = new Array(1, 2, 3);
+alphaNumeric = alpha.concat(numeric); // tworzy tablicę ["a", "b", "c", 1, 2, 3]
+
+ +

Przykład: Połączenie trzech tablic

+ +

Następujący kod łączy trzy tablice:

+ +
num1 = [1, 2, 3];
+num2 = [4, 5, 6];
+num3 = [7, 8, 9];
+nums = num1.concat(num2,num3) // tworzy tablicę [1, 2, 3, 4, 5, 6, 7, 8, 9]
+
+ +

Przykład: Połączenie wartości z tablicą

+ +

Następujący kod łączy trzy wartości z tablicą:

+ +
alpha = ['a', 'b', 'c'];
+alphaNumeric = alpha.concat(1, 2, 3); // tworzy tablicę ["a", "b", "c", 1, 2, 3]
+
diff --git a/files/pl/web/javascript/reference/global_objects/array/copywithin/index.html b/files/pl/web/javascript/reference/global_objects/array/copywithin/index.html new file mode 100644 index 0000000000..1a1917eabd --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/copywithin/index.html @@ -0,0 +1,181 @@ +--- +title: Array.prototype.copyWithin() +slug: Web/JavaScript/Referencje/Obiekty/Array/copyWithin +tags: + - Array + - ECMAScript 2015 + - JavaScript + - Metodă + - Peototyp + - Prototype + - Reference + - Referencja + - Tablica + - polyfill +translation_of: Web/JavaScript/Reference/Global_Objects/Array/copyWithin +--- +
{{JSRef}}
+ +

Metoda copyWithin() tworzy kopie płytkie części tablicy w innej części tej samej tablicy i zwraca tę tablicę bez modyfikowania jej długości.

+ +
{{EmbedInteractiveExample("pages/js/array-copywithin.html")}}
+ + + +

Składnia

+ +
arr.copyWithin(cel[, start[, koniec]])
+
+ +

Parametry

+ +
+
cel
+
Indeks (liczony od zera), do którego ma zostać skopiowana sekwencja. Jeśli wartość target będzie ujemna, pozycja będzie liczona od końca tablicy.
+
Jeśli cel jest większy lub równy arr.length, nic nie zostanie skopiowane. Jeśli wartość cel będzie większa niż start, kopiowana sekwencja zostanie przycięta tak, aby pasować do arr.length.
+
start {{optional_inline}}
+
Indeks (liczony od zera), określający pozycję początkową sekwencji, która ma zostać skopiowana. Jeśli wartość ta będzie ujemna, start będzie liczony od końca tablicy.
+
Jeśli wartość start nie jest podana, copyWithin skopiuje sekwencję zaczynając od indeksu 0
+
koniec {{optional_inline}}
+
Indeks (liczony od zera), określający pozycję końcową sekwencji, która ma zostać skopiowana, z wyłączeniem wartości pod indeksem koniec. Jeśli wartość ta będzie ujemna, koniec będzie liczony od końca tablicy.
+
Jeśli wartość koniec nie jest podana, copyWithin skopiuje sekwencję do ostatniego indeksu (domyślnie do arr.length).
+
+ +

Zwracana wartość

+ +

Zmodyfikowana tablica.

+ +

Opis

+ +

Metoda copyWithin działa jak memmove w C/C++ i jest wysokowydajną metodą przesuwania wartości w obiektach {{jsxref("Array")}}. Dotyczy to szczególnie metody o tej samej nazwie {{jsxref("TypedArray/copyWithin", "TypedArray")}}. Sekwencja jest kopiowana i wklejana w jednej operacji, a wklejona sekwencja będzie zawierać skopiowane wartości nawet wtedy, gdy zakres żródłowy (kopiowania) i docelowy (wklejania) nakładają się na siebie.

+ +

Funkcja copyWithin jest celowo ogólna, nie wymaga, by jej wartość this była obiektem typu {{jsxref("Array")}}.

+ +

Metoda copyWithin jest modyfikowalna. Nie zmienia długości this, ale zmienia zawartość this i tworzy nowe własności, jeśli jest to konieczne.

+ +

Polyfill

+ +
if (!Array.prototype.copyWithin) {
+  Object.defineProperty(Array.prototype, 'copyWithin', {
+    value: function(target, start/*, end*/) {
+    // Kroki 1-2.
+    if (this == null) {
+      throw new TypeError('this is null or not defined');
+    }
+
+    var O = Object(this);
+
+    // Kroki 3-5.
+    var len = O.length >>> 0;
+
+    // Kroki 6-8.
+    var relativeTarget = target >> 0;
+
+    var to = relativeTarget < 0 ?
+      Math.max(len + relativeTarget, 0) :
+      Math.min(relativeTarget, len);
+
+    // Kroki 9-11.
+    var relativeStart = start >> 0;
+
+    var from = relativeStart < 0 ?
+      Math.max(len + relativeStart, 0) :
+      Math.min(relativeStart, len);
+
+    // Kroki 12-14.
+    var end = arguments[2];
+    var relativeEnd = end === undefined ? len : end >> 0;
+
+    var final = relativeEnd < 0 ?
+      Math.max(len + relativeEnd, 0) :
+      Math.min(relativeEnd, len);
+
+    // Krok 15.
+    var count = Math.min(final - from, len - to);
+
+    // Kroki 16-17.
+    var direction = 1;
+
+    if (from < to && to < (from + count)) {
+      direction = -1;
+      from += count - 1;
+      to += count - 1;
+    }
+
+    // Krok 18.
+    while (count > 0) {
+      if (from in O) {
+        O[to] = O[from];
+      } else {
+        delete O[to];
+      }
+
+      from += direction;
+      to += direction;
+      count--;
+    }
+
+    // Krok 19.
+    return O;
+  },
+  configurable: true,
+  writable: true
+  });
+}
+ +

Przykłady

+ +

Użycie copyWithin

+ +
[1, 2, 3, 4, 5].copyWithin(-2)
+// [1, 2, 3, 1, 2]
+
+[1, 2, 3, 4, 5].copyWithin(0, 3)
+// [4, 5, 3, 4, 5]
+
+[1, 2, 3, 4, 5].copyWithin(0, 3, 4)
+// [4, 2, 3, 4, 5]
+
+[1, 2, 3, 4, 5].copyWithin(-2, -3, -1)
+// [1, 2, 3, 3, 4]
+
+[].copyWithin.call({długość: 5, 3: 1}, 0, 3)
+// {0: 1, 3: 1, długość: 5}
+
+// ES2015 Typowane tablice są podklasami zwykłej tablicy (Array)
+var i32a = new Int32Array([1, 2, 3, 4, 5])
+
+i32a.copyWithin(0, 2)
+// Int32Array [3, 4, 5, 4, 5]
+
+// Na platformach niewspierających jeszcze ES 2015:
+[].copyWithin.call(new Int32Array([1, 2, 3, 4, 5]), 0, 3, 4);
+// Int32Array [4, 2, 3, 4, 5]
+
+ +

Specyfikacje

+ + + + + + + + + + +
Specyfikacja
{{SpecName('ESDraft', '#sec-array.prototype.copywithin', 'Array.prototype.copyWithin')}}
+ +

Wsparcie przeglądarek

+ +
+ + +

{{Compat("javascript.builtins.Array.copyWithin")}}

+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/entries/index.html b/files/pl/web/javascript/reference/global_objects/array/entries/index.html new file mode 100644 index 0000000000..6ff83958f4 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/entries/index.html @@ -0,0 +1,77 @@ +--- +title: Array.prototype.entries() +slug: Web/JavaScript/Referencje/Obiekty/Array/entries +translation_of: Web/JavaScript/Reference/Global_Objects/Array/entries +--- +
{{JSRef}}
+ +

Metoda entries() zwraca obiekt Iteratora który zawiera parę klucz/wartość dla każdej pozycji w tablicy.

+ +
{{EmbedInteractiveExample("pages/js/array-entries.html")}}
+ + + +

Składnia

+ +
a.entries()
+ +

Zwracana wartość

+ +

Nowy iterator {{jsxref("Tablicy")}}.

+ +

Przykłady

+ +

Użycie w pętli for…of

+ +
var a = ['a', 'b', 'c'];
+var iterator = a.entries();
+
+for (let e of iterator) {
+  console.log(e);
+}
+// [0, 'a']
+// [1, 'b']
+// [2, 'c']
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-array.prototype.entries', 'Array.prototype.entries')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ESDraft', '#sec-array.prototype.entries', 'Array.prototype.entries')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność w przeglądarkach

+ +
+ + +

{{Compat("javascript.builtins.Array.entries")}}

+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/every/index.html b/files/pl/web/javascript/reference/global_objects/array/every/index.html new file mode 100644 index 0000000000..4b6cb612a2 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/every/index.html @@ -0,0 +1,89 @@ +--- +title: Array.prototype.every() +slug: Web/JavaScript/Referencje/Obiekty/Array/every +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/every +--- +
{{JSRef("Global_Objects", "Array")}}
+ +

Podsumowanie

+ +

Metoda  every() sprawdza, czy wszystkie elementy w tablicy przechodzą test zrealizowany w postaci dostarczonej funkcji.

+ +

Składnia

+ +
arr.every(callback[, thisArg])
+ +

Parametry

+ +
+
callback
+
Funkcja sprawdzająca dla każdego elementu. Zawiera trzy argumenty.
+ currentValue
+   
Bieżący element przetwarzany w tablicy
+
       index
+
+

     Indeks bieżacego elementu przetwarzanego w tablicy

+ +

 array
+     Tablica na której została wywołana funkcja

+
+
thisObject
+
Opcjonalnie. Obiekt, na który będzie wskazywał this, gdy wykonana zostanie funkcja zwrotna callback
+
+ +

Opis

+ +

Metoda every wykonuje dostarczoną funkcję callback raz dla każdego elementu tablicy do momentu, kiedy znajdzie taki element, dla którego funkcja callback zwróci wartość false. Jeżeli taki element zostanie znaleziony, test zostanie przerwany, a metoda every zwróci wartość false. W przeciwnym wypadku (callback zwraca wartość true dla wszystkich elementów) every zwróci true. Funkcja callback wywoływana jest jedynie dla indeksów tablicy, którym została przypisana wartość; nie jest wywoływana dla indeksów, które zostały usunięte i tych, którym nigdy nie została przypisana żadna wartość.

+ +

Funkcja callback jest wywoływana z trzema argumentami: wartością elementu, jego indeksem i obiektem tablicy, w którym się ten element zawiera.

+ +

Jeśli parametr thisObject został dostarczony do metody every, będzie on wskazywany przez this dla każdego wywołania funkcji callback. W przypadku, gdy nie został on przekazany lub jego wartość jest równa null, this będzie się odnosić do obiektu globalnego połączonego z funkcją callback.

+ +

Metoda every nie modyfikuje tablicy, na której jest wywoływana.

+ +

Zakres elementów przetwarzanych przez every jest ustawiany przed pierwszym wywołaniem funkcji callback. Elementy dołączone do tablicy po momencie wywołania every są testowane przez callback. Jeśli istniejące elementy tablicy są zmieniane lub usuwane, to wartość przesyłana do funkcji callback odpowiada wartości w momencie, w którym every się o nie zwróci; metoda every nie upomina się o elementy usunięte.

+ +

Kompatybilność

+ +

every jest rozszerzeniem JavaScript dla standardu ECMA-262, więc może nie być obecny w innych implementacjach tego standardu. Można to obejść, dopisując poniższy kod na początku skryptu, zezwalający na użycie every w implementacji ECMA-262, które nie wspierają tego natywnie.

+ +
if (!Array.prototype.every)
+{
+  Array.prototype.every = function(fun /*, thisp*/)
+  {
+    var len = this.length;
+    if (typeof fun != "function")
+      throw new TypeError();
+
+    var thisp = arguments[1];
+    for (var i = 0; i < len; i++)
+    {
+      if (i in this &&
+          !fun.call(thisp, this[i], i, this))
+        return false;
+    }
+
+    return true;
+  };
+}
+
+ +

Przykłady

+ +

Przykład: Sprawdzanie rozmiaru wszystkich elementów tablicy

+ +

Następujący przykład sprawdza, czy wszystkie elementy w tablicy są większe niż 10.

+ +
function isBigEnough(element, index, array) {
+  return (element >= 10);
+}
+passed = [12, 5, 8, 130, 44].every(isBigEnough);
+// fałsz
+passed = [12, 54, 18, 130, 44].every(isBigEnough);
+// prawda
+
diff --git a/files/pl/web/javascript/reference/global_objects/array/fill/index.html b/files/pl/web/javascript/reference/global_objects/array/fill/index.html new file mode 100644 index 0000000000..1ab2ef4719 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/fill/index.html @@ -0,0 +1,185 @@ +--- +title: Array.prototype.fill() +slug: Web/JavaScript/Referencje/Obiekty/Array/fill +translation_of: Web/JavaScript/Reference/Global_Objects/Array/fill +--- +
{{JSRef}}
+ +

Metoda fill() uzupełnia wszystkie elementy tablicy, zaczynając od indeksu początkowego  (start) aż po indeks końcowy (end) statyczną wartością (value).

+ +

{{EmbedInteractiveExample("pages/js/array-fill.html")}}
+ Źródło tego przykładu jest przechowywane w repozytorium na GitHub. Jeśli chciałbyś dodać coś od siebie do projektu interaktywnych przykładów, sklonuj https://github.com/mdn/interactive-examples  i wyślij pull request.

+ +

Składnia

+ +
arr.fill(value[, start = 0[, end = this.length]])
+ +

Parametry

+ +
+
value
+
Wartość, którą wypełniana będzie tablica.
+
start
+
Opcjonalnie. Indeks początkowy.
+
end
+
Opcjonalnie. Indeks końcowy.
+
+

Wartość zwracana

+ +

Zmodyfikowana tablica.

+
+
+ +

Opis

+ +

Przedział elementów do wypełnienia to: [start, end).

+ +

Metoda fill przyjmuje do trzech parametrów value, start i end. Argumenty start i end są opcjonalne i przyjmują, odpowiednio,  0 i długość (length) obiektu this.

+ +

Jeżeli parametr start jest ujemny, jest to traktowane jako length+start gdzie length jest liczbą elementów tablicy. Jeżeli parametr end jest negatywny, jest to traktowane jako length+end

+ +

Funkcja fill została świdomie zaprojektowana jako generyczna, przez co nie wymaga, by wartość this była obiektem typu Array.

+ +

Metoda fill jest zmienna (ang. mutalbe), metoda ta nie zwraca kopii this, a oryginalny obiekt po modyfikacjach.

+ +

Przykłady

+ +
[1, 2, 3].fill(4);               // [4, 4, 4]
+[1, 2, 3].fill(4, 1);            // [1, 4, 4]
+[1, 2, 3].fill(4, 1, 2);         // [1, 4, 3]
+[1, 2, 3].fill(4, 1, 1);         // [1, 2, 3]
+[1, 2, 3].fill(4, -3, -2);       // [4, 2, 3]
+[1, 2, 3].fill(4, NaN, NaN);     // [1, 2, 3]
+[].fill.call({ length: 3 }, 4);  // {0: 4, 1: 4, 2: 4, length: 3}
+//Obiekty przez referencję
+var arr = Array(3).fill({}) // [{}, {}, {}];
+arr[0].hi = "hi"; // [{ hi: "hi" }, { hi: "hi" }, { hi: "hi" }]
+
+ +

 

+ +

 

+ +

Polyfill

+ +
if (!Array.prototype.fill) {
+  Array.prototype.fill = function(value) {
+
+    // Steps 1-2.
+    if (this == null) {
+      throw new TypeError('this is null or not defined');
+    }
+
+    var O = Object(this);
+
+    // Steps 3-5.
+    var len = O.length >>> 0;
+
+    // Steps 6-7.
+    var start = arguments[1];
+    var relativeStart = start >> 0;
+
+    // Step 8.
+    var k = relativeStart < 0 ?
+      Math.max(len + relativeStart, 0) :
+      Math.min(relativeStart, len);
+
+    // Steps 9-10.
+    var end = arguments[2];
+    var relativeEnd = end === undefined ?
+      len : end >> 0;
+
+    // Step 11.
+    var final = relativeEnd < 0 ?
+      Math.max(len + relativeEnd, 0) :
+      Math.min(relativeEnd, len);
+
+    // Step 12.
+    while (k < final) {
+      O[k] = value;
+      k++;
+    }
+
+    // Step 13.
+    return O;
+  };
+}
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES6', '#sec-array.prototype.fill', 'Array.prototype.fill')}}{{Spec2('ES6')}}Definicja początkowa
+ +

Kompatybilność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FunckjonalnośćChromeFirefox (Gecko)Internet ExplorerOperaSafari
Wsparcie podstawowe{{CompatChrome("36")}} [1]{{CompatGeckoDesktop("31")}}{{CompatNo}}{{CompatNo}}{{CompatSafari("7.1")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Wsparcie podstawowe{{CompatNo}}{{CompatNo}}{{CompatGeckoMobile("31")}}{{CompatNo}}{{CompatNo}}8.0
+
+ +

[1] The feature is available behind a preference. In chrome://flags, activate the entry “Enable Experimental JavaScript”.

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/filter/index.html b/files/pl/web/javascript/reference/global_objects/array/filter/index.html new file mode 100644 index 0000000000..4b18a34c9c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/filter/index.html @@ -0,0 +1,150 @@ +--- +title: Array.prototype.filter() +slug: Web/JavaScript/Referencje/Obiekty/Array/filter +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/filter +--- +
{{JSRef}}
+ +

Metoda filter() tworzy nową tablicę z wszystkimi elementami, które przechodzą test określony w postaci funkcji.

+ +
function isBigEnough(value) {
+  return value >= 10;
+}
+
+var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);
+// filtered is [12, 130, 44]
+
+ +

Składnia

+ +
var newArray = arr.filter(callback(element[, index[, array]])[, thisArg])
+ +

Parametry

+ +
+
callback
+
Funkcja sprawdzająca każdy element tablicy. Funkcja powinna zwrócić true, aby zatrzymać element lub false, aby odrzucić element. Funkcja przyjmuje trzy argumenty:
+
+
+
element
+
Element tablicy do przetworzenia.
+
index
+
Numer indeksu procesowanego elementu tablicy.
+
array
+
Tablica na której filter został wywołany.
+
+
+
thisArg
+
Obiekt na który będzie wskazywał this, przy wywoływaniu funkcji callback.
+
+ +

Opis

+ +

Metoda filter wykonuje dostarczoną funkcję callback dla każdego elementu tablicy, tworząc nową tablicę z wszystkich tych elementów, dla których funkcja callback zwróciła wartość true. Wynikowa tablica jest zwarta; wartości, które nie przechodzą testu funkcji callback, są zwyczajnie pomijane i nie są przypisywane do indeksów nowej tablicy.

+ +

Funkcja callback jest wywoływana z trzema argumentami: wartością elementu, jego indeksem i obiektem tablicy, w którym się ten element zawiera.

+ +

Jeśli parametr thisObject został dostarczony do metody filter, będzie on wskazywany przez this dla każdego wywołania funkcjicallback. W przypadku gdy nie został on przekazany lub jego wartość jest równa null, this będzie się odnosić do obiektu globalnego połączonego z funkcją callback.

+ +

Metoda filter nie modyfikuje tablicy, na której jest wywoływana.

+ +

Zakres elementów przetwarzanych przez filter jest ustawiany przed pierwszym wywołaniem funkcji callback. Elementy dołączone do tablicy po momencie wywołania filter są testowane przez callback. Jeśli istniejące elementy tablicy są zmieniane lub usuwane, to wartość przesyłana do funkcji callback odpowiada wartości w momencie, w którym filter się o nie zwróci; metoda filter nie upomina się o elementy usunięte.

+ +

Kompatybilność

+ +

filter jest rozszerzeniem JavaScript dla standardu ECMA-262, więc może nie być obecny w innych implementacjach tego standardu. Można to obejść, dopisując poniższy kod na początku skryptu, zezwalający na użycie filter w implementacji ECMA-262, które nie wspierają tego natywnie.

+ +
if (!Array.prototype.filter)
+{
+  Array.prototype.filter = function(fun /*, thisp*/)
+  {
+    var len = this.length;
+    if (typeof fun != "function")
+      throw new TypeError();
+
+    var res = new Array();
+    var thisp = arguments[1];
+    for (var i = 0; i < len; i++)
+    {
+      if (i in this)
+      {
+        var val = this[i]; // in case fun mutates this
+        if (fun.call(thisp, val, i, this))
+          res.push(val);
+      }
+    }
+
+    return res;
+  };
+}
+
+ +

Przykłady

+ +

Przykład: Odfiltrowanie wszystkich małych wartości

+ +

Poniższy przykład używa filter by utworzyć przefiltrowaną tablicę, z której usunięto wszystkie elementy których wartość wynosi mniej niż 10.

+ +
function isBigEnough(element, index, array) {
+  return (element >= 10);
+}
+filtered = [12, 5, 8, 130, 44].filter(isBigEnough);
+
+ +

Kompatybilność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatGeckoDesktop("1.8")}}{{CompatIE("9")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile("1.8")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
diff --git a/files/pl/web/javascript/reference/global_objects/array/find/index.html b/files/pl/web/javascript/reference/global_objects/array/find/index.html new file mode 100644 index 0000000000..6e8d67373b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/find/index.html @@ -0,0 +1,278 @@ +--- +title: Array.prototype.find() +slug: Web/JavaScript/Referencje/Obiekty/Array/find +tags: + - Array + - ECMAScript 2015 + - JavaScript + - Metodă + - Prototype + - Referencja + - Tablica + - polyfill +translation_of: Web/JavaScript/Reference/Global_Objects/Array/find +--- +

{{JSRef}}
+ Metoda find() zwraca pierwszy element tablicy, który spełnia warunek podanej funkcji testującej.

+ +
{{EmbedInteractiveExample("pages/js/array-find.html","shorter")}}
+ + + + + +

Składnia

+ +
arr.find(callback[, thisArg])
+ +

Parametry

+ +
+
callback
+
Funkcja do wykonania przy każdym elemencie tablicy, przyjmująca trzy wartości: +
+
element
+
Element obecnie przetwarzany przez funkcję.
+
index
+
Indeks obecnie przetwarzanego elementu.
+
array
+
Tablica, na której wywołano funkcję find.
+
+
+
thisArg
+
Opcjonalny. Obiekt, który będzie się znajdował pod this w czasie wykonywania funkcji callback.
+
+ +

Zwracana wartość

+ +

Wartość pierwszego elementu w tablicy, spełniającego warunek funkcji testującej.
+ W przeciwnym wypadku: {{jsxref("undefined")}}.

+ +

Opis

+ +

Metoda find wywołuje funkcję callback raz dla każdego indeksu tablicy, dopóki nie znajdzie takiego elementu, dla którego callback zwraca wartość true. Wówczas find natychmiast zwraca wartość tego elementu. W przeciwnym razie, gdy żaden z elementów nie spełni warunków funkcji testującej, find zwraca {{jsxref("undefined")}}.

+ +

callback jest wywoływany dla każdego indeksu tablicy, nie tylko tych z przypisanymi wartościami. Oznacza to, że może to być mniej efektywne w przypadku tablic rzadkich, w porównaniu z metodami, które odwiedzają jedynie indeksy z przypisanymi wartościami.

+ +

Jeśli parametr thisArgjest przekazany do find, będzie użyty jako wartość this w każdym wywołaniu callback. Jeśli parametr ten nie jest przekazany, używana jest wartość {{jsxref("undefined")}}.

+ +

Metoda find nie modyfikuje tablicy, na której jest wywoływana, ale może to robić funkcja przekazana do callback. Jeśli tak się stanie, elementy przetwarzane przez find są ustawiane przed pierwszym wywołaniem funkcji callback. Zatem:

+ + + +

Polyfill

+ +

Metoda ta została dodana do specyfikacji ECMAScript 2015 i może nie być jeszcze dostępna we wszystkich implementacjach języka JavaScript.  Niemniej jednak, możesz użyć polyfillArray.prototype.find z poniższym fragmentem kodu:

+ +
// https://tc39.github.io/ecma262/#sec-array.prototype.find
+if (!Array.prototype.find) {
+  Object.defineProperty(Array.prototype, 'find', {
+    value: function(predicate) {
+      // 1. Let O be ? ToObject(this value).
+      if (this == null) {
+        throw TypeError('"this" is null or not defined');
+      }
+
+      var o = Object(this);
+
+      // 2. Let len be ? ToLength(? Get(O, "length")).
+      var len = o.length >>> 0;
+
+      // 3. If IsCallable(predicate) is false, throw a TypeError exception.
+      if (typeof predicate !== 'function') {
+        throw TypeError('predicate must be a function');
+      }
+
+      // 4. If thisArg was supplied, let T be thisArg; else let T be undefined.
+      var thisArg = arguments[1];
+
+      // 5. Let k be 0.
+      var k = 0;
+
+      // 6. Repeat, while k < len
+      while (k < len) {
+        // a. Let Pk be ! ToString(k).
+        // b. Let kValue be ? Get(O, Pk).
+        // c. Let testResult be ToBoolean(? Call(predicate, T, « kValue, k, O »)).
+        // d. If testResult is true, return kValue.
+        var kValue = o[k];
+        if (predicate.call(thisArg, kValue, k, o)) {
+          return kValue;
+        }
+        // e. Increase k by 1.
+        k++;
+      }
+
+      // 7. Return undefined.
+      return undefined;
+    },
+    configurable: true,
+    writable: true
+  });
+}
+
+ +

Jeśli potrzebujesz wspierać naprawdę przestarzałe silniki JavaScript, które nie wspierająt Object.defineProperty, najlepiej w ogóle nie używać polyfill z Array.prototype, gdyż nie da się go uczynić niewyliczeniowym.

+ +

Przykłady

+ +

Wyszukiwanie obiektu w tablicy na podstawie jednej z jego własności

+ +
const inventory = [
+  {name: 'apples', quantity: 2},
+  {name: 'bananas', quantity: 0},
+  {name: 'cherries', quantity: 5}
+];
+
+function isCherries(fruit) {
+  return fruit.name === 'cherries';
+}
+
+console.log(inventory.find(isCherries));
+// { name: 'cherries', quantity: 5 }
+ +

Użycie funkcji strzałkowej i destrukturyzacja

+ +
const inventory = [
+  {name: 'apples', quantity: 2},
+  {name: 'bananas', quantity: 0},
+  {name: 'cherries', quantity: 5}
+];
+
+const result = inventory.find( ({ name }) => name === 'cherries' );
+
+console.log(result) // { name: 'cherries', quantity: 5 }
+ +

Wyszukiwanie liczby pierwszej w tablicy

+ +

Poniższy przykładowy kod znajduje element tablicy będący liczbą pierwszą (lub zwraca {{jsxref("undefined")}} jeśli w tablicy nie ma liczby pierwszej):

+ +
function czyPierwsza(element, indeks, tablica) {
+  let start = 2;
+  while (start <= Math.sqrt(element)) {
+    if (element % start++ < 1) {
+      return false;
+    }
+  }
+  return element > 1;
+}
+
+console.log([4, 6, 8, 12].find(czyPierwsza)); // undefined, nie znaleziono
+console.log([4, 5, 8, 12].find(czyPierwsza)); // 5
+
+ +

Poniższy przykład pokazuje, że nieistniejące i usunięte elementy odwiedzane, oraz że wartość przekazana do callback jest ich wartością, kiedy są odwiedzane:

+ +
// Zadeklaruj tablicę bez elementów przy indeksach 2, 3 i 4
+const array = [0,1,,,,5,6];
+
+// Pokazuje wszystkie indeksy, nie tylko te z przypisanymi wartościami
+array.find(function(value, index) {
+  console.log('Odwiedzono indeks ', index, ' z wartością ', value);
+});
+
+// Pokazuje wszystkie indeksy, włączając usunięte
+array.find(function(value, index) {
+  // Usuń element 5 w pierwszej iteracji
+  if (index === 0) {
+    console.log('Usuwanie array[5] z wartością ', array[5]);
+    delete array[5];
+  }
+  // Element 5 jest wciąż odwiedzany, choć został usunięty
+  console.log('Odwiedzono indeks ', index, ' z wartością ', value);
+});
+// Oczekiwane wyjście:
+// Usuwanie array[5] z wartością 5
+// Odwiedzono indeks 0 z wartością 0
+// Odwiedzono indeks 1 z wartością 1
+// Odwiedzono indeks 2 z wartością undefined
+// Odwiedzono indeks 3 z wartością undefined
+// Odwiedzono indeks 4 z wartością undefined
+// Odwiedzono indeks 5 z wartością undefined
+// Odwiedzono indeks 6 z wartością 6
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-array.prototype.find', 'Array.prototype.find')}}{{Spec2('ES2015')}}Pierwotna definicja.
+ +

Wsparcie przeglądarek

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatChrome("45.0")}}{{CompatGeckoDesktop("25.0")}}{{CompatNo}}{{CompatNo}}{{CompatSafari("7.1")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatNo}}{{CompatGeckoMobile("25.0")}}{{CompatNo}}{{CompatNo}}iOS 8
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/findindex/index.html b/files/pl/web/javascript/reference/global_objects/array/findindex/index.html new file mode 100644 index 0000000000..86a9cf67cf --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/findindex/index.html @@ -0,0 +1,214 @@ +--- +title: Array.prototype.findIndex() +slug: Web/JavaScript/Referencje/Obiekty/Array/findIndex +translation_of: Web/JavaScript/Reference/Global_Objects/Array/findIndex +--- +
{{JSRef}}
+ +

Metoda findIndex() zwraca indeks pierwszego elementu tablicy, który spełnia kryteria postawione w funkcji testującej. W przeciwnym wypadku zwraca -1.

+ +
function isBigEnough(element) {
+  return element >= 15;
+}
+
+[12, 5, 8, 130, 44].findIndex(isBigEnough);
+// zostanie zwrócony indeks czwartego elementu tablicy,
+// który wynosi 3
+ +

Zobacz także metodę {{jsxref("Array.find", "find()")}}, która zwraca wartość znalezionego elementu, zamiast jego indeksu.

+ +

Składnia

+ +
arr.findIndex(callback[, thisArg])
+ +

Parametry

+ +
+
callback
+
Funkcja wywoływana dla każdej wartości w tablicy, bierze trzy argumenty:
+
+
+
element
+
Obecnie przetwarzany element z tablicy.
+
index
+
Indeks obecnie przetwarzanego elementu z tablicy.
+
array
+
Tablica, na której została wywołana funkcja findIndex.
+
+
+
thisArg
+
Opcjonalny.  Obiekt do użycia jako this w czasie wykonywania callback.
+
+ +

Zwracana wartość

+ +

Indeks elementu tablicy, który pomyślnie przeszedł test, jeśli taki nie zostanie znaleziony, zwraca -1.

+ +

Opis

+ +

Metoda findIndex wykonuje funkcję callback dla każdego indeksu tablicy 0..długość - 1 (włącznie) w tablicy dopóki nie znajdzie tego, na którym funkcja callback zwróci prawdę. Jeśli taki element zostanie znaleziony, findIndex natychmiast zwraca indeks dla tej iteracji. Jeśli callback nigdy nie zwróci prawdy lub wielkość tablicy wynosi 0, findIndex zwróci -1. W przeciwieństwie do innych metod tablicowych takich jak Array#some, w tablicach rzadkich callback jest wywoływany nawet dla indeksów niewystępujących w tablicy.

+ +

callback jest wywoływany z trzema argumentami: wartością elementu, indeksem elementu i przetwarzaną tablicą.

+ +

Jeśli thisArg jest dołączony do findIndex, zostanie użyty jako this dla każdego wywołania . Jeśli nie, zostanie użyte {{jsxref("undefined")}}.

+ +

findIndex nie zmienia tablicy na której jest wywoływany.

+ +

Zakres elementów przetwarzanych przez findIndex jest ustawiany przed pierwszym wywołaniem funkcji callback. Elementy, które są dodane po rozpoczęciu wywołania funkcji findIndex nie będą przetworzone przez callback. Jeśli istniejący, nieodwiedzony element tablicy zostanie zmieniony przez callback, jego wartość przekazana do odwiedzającego callback będzie tą wartością z momentu, w którym findIndex odwiedzi indeks tego elementu, elementy usunięte, nie będą odwiedzone.

+ +

Przykłady

+ +

Znajdź indeks liczby pierwszej w tablicy

+ +

Poniższy przykład znajduje indeks elementu w tablicy, który jest liczbą pierwszą (lub zwraca -1 jeśli nie w tablicy nie ma liczby pierwszej).

+ +
function isPrime(element, index, array) {
+  var start = 2;
+  while (start <= Math.sqrt(element)) {
+    if (element % start++ < 1) {
+      return false;
+    }
+  }
+  return element > 1;
+}
+
+console.log([4, 6, 8, 12].findIndex(isPrime)); // -1, nie znaleziono
+console.log([4, 6, 7, 12].findIndex(isPrime)); // 2
+
+ +

Polyfill

+ +
// https://tc39.github.io/ecma262/#sec-array.prototype.findIndex
+if (!Array.prototype.findIndex) {
+  Object.defineProperty(Array.prototype, 'findIndex', {
+    value: function(predicate) {
+     // 1. Let O be ? ToObject(this value).
+      if (this == null) {
+        throw new TypeError('"this" ma wartość null lub undefined');
+      }
+
+      var o = Object(this);
+
+      // 2. Niech len będzie ? ToLength(? Get(O, "length")).
+      var len = o.length >>> 0;
+
+      // 3. Jeśli IsCallable(predicate) jest fałszem, rzuć wyjątek TypeError.
+      if (typeof predicate !== 'function') {
+        throw new TypeError('predykat musi być funkcją');
+      }
+
+      // 4. Jeśli thisArg został podany, niech T będzie thisArg; w przeciwnym wypadku, niech T będzie undefined.
+      var thisArg = arguments[1];
+
+      // 5. Let k be 0.
+      var k = 0;
+
+      // 6. Powtarzaj, dopóki k < len
+      while (k < len) {
+        // a. Niech Pk będzie ! ToString(k).
+        // b. Niech kValue będzie ? Get(O, Pk).
+        // c. Niech testResult będzie ToBoolean(? Call(predicate, T, « kValue, k, O »)).
+        // d. Jeśli testResult jest prawdą, zwróć k.
+        var kValue = o[k];
+        if (predicate.call(thisArg, kValue, k, o)) {
+          return k;
+        }
+        // e. Zwiększ wartość k o 1.
+        k++;
+      }
+
+      // 7. Return -1.
+      return -1;
+    }
+  });
+}
+
+ +

Jeśli musisz wspierać naprawdę przestarzałe silniki JavaScript, które nie wspierają Object.defineProperty, najlepiej nie korzystać z metod Array.prototype  w ogóle, ponieważ nie można sprawić by były niepoliczalne.

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusKomentarz
{{SpecName('ES2015', '#sec-array.prototype.findindex', 'Array.prototype.findIndex')}}{{Spec2('ES2015')}}Podstawowa definicja.
{{SpecName('ESDraft', '#sec-array.prototype.findIndex', 'Array.prototype.findIndex')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność przeglądarek

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerEdgeOperaSafari
Basic support{{CompatChrome(45.0)}}{{CompatVersionUnknown}}{{CompatGeckoDesktop("25.0")}}{{CompatNo}}TakTak{{CompatSafari("7.1")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}45.0{{CompatVersionUnknown}}{{CompatGeckoMobile("25.0")}}{{CompatNo}}{{CompatNo}}8.0
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/flat/index.html b/files/pl/web/javascript/reference/global_objects/array/flat/index.html new file mode 100644 index 0000000000..3c8de3a43c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/flat/index.html @@ -0,0 +1,173 @@ +--- +title: Array.prototype.flat() +slug: Web/JavaScript/Referencje/Obiekty/Array/flat +translation_of: Web/JavaScript/Reference/Global_Objects/Array/flat +--- +
{{JSRef}}
+ +
+ +

Metoda flat() tworzy nową tablicę ze wszystkich elementów, które są podtablicami, łącząc je rekursyjnie z podanym parametrem jak głęboko powinno nastąpić spłaszczenie.

+ + + + + +

Składnia

+ +
var newArray = arr.flat([depth]);
+ +

Parametry

+ +
+
depth {{optional_inline}}
+
Parametr ten określa jak głęboko zagnieżdżona tablica powinna być spłaszczona. Wartość domyślna to 1.
+
+ +

Zwracana wartość

+ +

Nowa tablica składająca się z połączonych elementów podtablic.

+ +

Przykłady

+ +

Spłaszczanie zagnieżdżonych tablic

+ +
var arr1 = [1, 2, [3, 4]];
+arr1.flat();
+// [1, 2, 3, 4]
+
+var arr2 = [1, 2, [3, 4, [5, 6]]];
+arr2.flat();
+// [1, 2, 3, 4, [5, 6]]
+
+var arr3 = [1, 2, [3, 4, [5, 6]]];
+arr3.flat(2);
+// [1, 2, 3, 4, 5, 6]
+
+ +

Spłaszczanie i puste miejsca tablicy

+ +

Metoda flat() usuwa puste miejsca w tablicy:

+ +
var arr4 = [1, 2, , 4, 5];
+arr4.flat();
+// [1, 2, 4, 5]
+
+ +

Alternatywa

+ +

reduce i concat

+ +
var arr1 = [1, 2, [3, 4]];
+arr1.flat();
+
+//to flat single level array
+arr1.reduce((acc, val) => acc.concat(val), []);// [1, 2, 3, 4]
+
+//or
+const flatSingle = arr => [].concat(...arr);
+
+ + + +
//to enable deep level flatten use recursion with reduce and concat
+var arr1 = [1,2,3,[1,2,3,4, [2,3,4]]];
+
+function flattenDeep(arr1) {
+   return arr1.reduce((acc, val) => Array.isArray(val) ? acc.concat(flattenDeep(val)) : acc.concat(val), []);
+}
+flattenDeep(arr1);// [1, 2, 3, 1, 2, 3, 4, 2, 3, 4]
+
+ + + +
//non recursive flatten deep using a stack
+var arr1 = [1,2,3,[1,2,3,4, [2,3,4]]];
+function flatten(input) {
+  const stack = [...input];
+  const res = [];
+  while (stack.length) {
+    // pop value from stack
+    const next = stack.pop();
+    if (Array.isArray(next)) {
+      // push back array items, won't modify the original input
+      stack.push(...next);
+    } else {
+      res.push(next);
+    }
+  }
+  //reverse to restore input order
+  return res.reverse();
+}
+flatten(arr1);// [1, 2, 3, 1, 2, 3, 4, 2, 3, 4]
+
+ + + +
//recursive flatten deep
+function flatten(array) {
+  var flattend = [];
+  !(function flat(array) {
+    array.forEach(function(el) {
+      if (Array.isArray(el)) flat(el);
+      else flattend.push(el);
+    });
+  })(array);
+  return flattend;
+}
+
+ + + +

Polyfill

+ +
if (!Array.prototype.flat) {
+  Array.prototype.flat = function(depth) {
+    var flattend = [];
+    (function flat(array, depth) {
+      for (let el of array) {
+        if (Array.isArray(el) && depth > 0) {
+          flat(el, depth - 1);
+        } else {
+          flattend.push(el);
+        }
+      }
+    })(this, Math.floor(depth) || 1);
+    return flattend;
+  };
+}
+
+ +

Specifications

+ + + + + + + + + + + + + + +
SpecificationStatusComment
Array.prototype.flat proposalFinished (4)
+ +

Browser compatibility

+ +
+ + +

{{Compat("javascript.builtins.Array.flat")}}

+
+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/foreach/index.html b/files/pl/web/javascript/reference/global_objects/array/foreach/index.html new file mode 100644 index 0000000000..6968498311 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/foreach/index.html @@ -0,0 +1,104 @@ +--- +title: Array.prototype.forEach() +slug: Web/JavaScript/Referencje/Obiekty/Array/forEach +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/forEach +--- +
{{JSRef("Global_Objects", "Array")}}
+ +

Podsumowanie

+ +

Wykonuje dostarczoną funkcję jeden raz na każdy element tablicy.

+ +

Składnia

+ +
arr.forEach(callback[, thisArg])
+ +

Parametry

+ +
+
callback
+
Funkcja wykonywana dla każdego elementu.
+
thisArg
+
Obiekt na który będzie wskazywał this, gdy wykonana zostanie funkcja zwrotna callback.
+
+ +

Opis

+ +

Metoda forEach wykonuje dostarczoną funkcje callback raz dla każdego elementu tablicy. Funkcja callback wywoływana jest jedynie dla indeksów tablicy, którym została przypisana wartość; nie jest wywoływana dla indeksów, które zostały usunięte i tych, którym nigdy nie została przypisana żadna wartość.

+ +

Funkcja callback jest wywoływana z trzema argumentami: wartością elementu, jego indeksem i obiektem tablicy, w którym się ten element zawiera.

+ +

Jeśli parametr thisArg został dostarczony do metody forEach, będzie on wskazywany przez this dla każdego wywołania funkcji callback. W przypadku, gdy nie został on przekazany lub jego wartość jest równa null, this będzie się odnosić do obiektu globalnego połączonego z funkcją callback.

+ +

Metoda forEach nie modyfikuje tablicy na której jest wywołana.

+ +

Zakres elementów przetwarzanych przez forEach jest ustawiany przed pierwszym wywołaniem funkcji callback. Elementy dołączone do końca tablicy po momencie wywołania forEach nie są przesyłane do funkcji callback. Jeśli istniejące elementy tablicy są zmieniane lub usuwane, to wartość przesyłana do funkcji callback odpowiada wartości w momencie, w którym forEach się o nie zwróci; elementy usunięte zanim zostaną odwiedzone nie zostaną odwiedzone. Jeżeli element już odwiedzony zostanie usunięty (nastąpi skrócenie tablicy), element tablicy w kolejności po obecnie odwiedzanym zostanie pominięty.

+ +

Kompatybilność

+ +

forEach jest rozszerzeniem JavaScript dla standardu ECMA-262, więc może nie być obecny w innych implementacjach tego standardu. Można to obejść, dopisując poniższy kod na początku skryptu, zezwalający na użycie forEach w implementacji ECMA-262, które nie wspierają tego natywnie.

+ +
if (!Array.prototype.forEach)
+{
+  Array.prototype.forEach = function(fun /*, thisp*/)
+  {
+    var len = this.length;
+    if (typeof fun != "function")
+      throw new TypeError();
+
+    var thisp = arguments[1];
+    for (var i = 0; i < len; i++)
+    {
+      if (i in this)
+        fun.call(thisp, this[i], i, this);
+    }
+  };
+}
+
+ +

Przykłady

+ +

Przykład: Drukowanie zawartości tablicy

+ +

Następujący kod drukuje linie dla każdego elementu w tablicy (i przyjmuje obecność funkcji print do wywołania!):

+ +
function printElt(element, index, array) {
+    print("[" + index + "] jest " + element);
+}
+[2, 5, 9].forEach(printElt);
+// Wydrukuje:
+// [0] jest 2
+// [1] jest 5
+// [2] jest 9
+
+ +

Przykład: Drukowanie zawartości tablicy z metodą obiektu

+ +

Następujący kod tworzy prosty obiekt wypisujący i następnie stosuje metodę writeln do wypisania jednej linii na element w tablicy (przyjmuje obecność funkcji print do wywołania!):

+ +
var writer = {
+    sb:       [],
+    write:    function (s) {
+        this.sb.push(s);
+    },
+    writeln:  function (s) {
+        this.write(s + "\n");
+    },
+    toString: function () {
+        return this.sb.join("");
+    }
+};
+
+[2, 5, 9].forEach(writer.writeln, writer);
+print(writer.toString());
+
+// Wydrukuje:
+// 2
+// 5
+// 9
+
diff --git a/files/pl/web/javascript/reference/global_objects/array/from/index.html b/files/pl/web/javascript/reference/global_objects/array/from/index.html new file mode 100644 index 0000000000..bd5f0294de --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/from/index.html @@ -0,0 +1,248 @@ +--- +title: Array.from() +slug: Web/JavaScript/Referencje/Obiekty/Array/from +translation_of: Web/JavaScript/Reference/Global_Objects/Array/from +--- +
{{JSRef}}
+ +

Array.from()  metoda tworzy nową instację tablicy z obiektu podobnego do tablicy lub obiektu iterowalnego.

+ +

W ES2015, składania klas dopuszcza dziedziczenie obu rodzajów klas: wbudowanych oraz zdefiniowanych przez programistę; w rezultacie, statyczne metody jak Array.from są "dziedziczone" przez klasę pochodną i tworzą nową instancję klasy pochodnej, a nie klasy Array.

+ +

Składnia

+ +
Array.from(arrayLike[, mapFn[, thisArg]])
+
+ +

Argumenty

+ +
+
arrayLike
+
Obiekt podobny do tablicy lub iterowalny.
+
mapFn
+
Opcjonalny. Funkcja mapująca wywoływany z każdym elementem tablicy.
+
thisArg
+
Opcjonalny. Wartość używana jako this podczas wykonywania mapFn.
+
+ +

Opis

+ +

Array.from() pozwala tworzyć tablicę z:

+ + + +

Array.from() has an optional parameter mapFn, which allows you to execute a {{jsxref("Array.prototype.map", "map")}} function on each element of the array (or subclass object) that is being created. More clearly, Array.from(obj, mapFn, thisArg) is the same as Array.from(obj).map(mapFn, thisArg), except that it does not create an intermediate array. This is especially important for certain array subclasses, like typed arrays, since the intermediate array would necessarily have values truncated to fit into the appropriate type.

+ +

The length property of the from() method is 1.

+ +

Przykłady

+ +
// Array-like object (arguments) to Array
+function f() {
+  return Array.from(arguments);
+}
+
+f(1, 2, 3);
+// [1, 2, 3]
+
+
+// Any iterable object...
+// Set
+var s = new Set(["foo", window]);
+Array.from(s);
+// ["foo", window]
+
+
+// Map
+var m = new Map([[1, 2], [2, 4], [4, 8]]);
+Array.from(m);
+// [[1, 2], [2, 4], [4, 8]]
+
+
+// String
+Array.from("foo");
+// ["f", "o", "o"]
+
+
+// Using an arrow function as the map function to
+// manipulate the elements
+Array.from([1, 2, 3], x => x + x);
+// [2, 4, 6]
+
+
+// Generate a sequence of numbers
+Array.from({length: 5}, (v, k) => k);
+// [0, 1, 2, 3, 4]
+
+
+ +

Polyfill

+ +

Array.from was added to the ECMA-262 standard in the 6th edition; as such it may not be present in other implementations of the standard. You can work around this by inserting the following code at the beginning of your scripts, allowing use of Array.from in implementations that don't natively support it.  This algorithm is exactly the one specified in ECMA-262, 6th edition, assuming Object and TypeError have their original values and that callback.call evaluates to the original value of {{jsxref("Function.prototype.call")}}. In addition, since true iterables can not be polyfilled, this implementation does not support generic iterables as defined in the 6th edition of ECMA-262.

+ +
// Production steps of ECMA-262, Edition 6, 22.1.2.1
+// Reference: https://people.mozilla.org/~jorendorff/es6-draft.html#sec-array.from
+if (!Array.from) {
+  Array.from = (function () {
+    var toStr = Object.prototype.toString;
+    var isCallable = function (fn) {
+      return typeof fn === 'function' || toStr.call(fn) === '[object Function]';
+    };
+    var toInteger = function (value) {
+      var number = Number(value);
+      if (isNaN(number)) { return 0; }
+      if (number === 0 || !isFinite(number)) { return number; }
+      return (number > 0 ? 1 : -1) * Math.floor(Math.abs(number));
+    };
+    var maxSafeInteger = Math.pow(2, 53) - 1;
+    var toLength = function (value) {
+      var len = toInteger(value);
+      return Math.min(Math.max(len, 0), maxSafeInteger);
+    };
+
+    // The length property of the from method is 1.
+    return function from(arrayLike/*, mapFn, thisArg */) {
+      // 1. Let C be the this value.
+      var C = this;
+
+      // 2. Let items be ToObject(arrayLike).
+      var items = Object(arrayLike);
+
+      // 3. ReturnIfAbrupt(items).
+      if (arrayLike == null) {
+        throw new TypeError("Array.from requires an array-like object - not null or undefined");
+      }
+
+      // 4. If mapfn is undefined, then let mapping be false.
+      var mapFn = arguments.length > 1 ? arguments[1] : void undefined;
+      var T;
+      if (typeof mapFn !== 'undefined') {
+        // 5. else
+        // 5. a If IsCallable(mapfn) is false, throw a TypeError exception.
+        if (!isCallable(mapFn)) {
+          throw new TypeError('Array.from: when provided, the second argument must be a function');
+        }
+
+        // 5. b. If thisArg was supplied, let T be thisArg; else let T be undefined.
+        if (arguments.length > 2) {
+          T = arguments[2];
+        }
+      }
+
+      // 10. Let lenValue be Get(items, "length").
+      // 11. Let len be ToLength(lenValue).
+      var len = toLength(items.length);
+
+      // 13. If IsConstructor(C) is true, then
+      // 13. a. Let A be the result of calling the [[Construct]] internal method of C with an argument list containing the single item len.
+      // 14. a. Else, Let A be ArrayCreate(len).
+      var A = isCallable(C) ? Object(new C(len)) : new Array(len);
+
+      // 16. Let k be 0.
+      var k = 0;
+      // 17. Repeat, while k < len… (also steps a - h)
+      var kValue;
+      while (k < len) {
+        kValue = items[k];
+        if (mapFn) {
+          A[k] = typeof T === 'undefined' ? mapFn(kValue, k) : mapFn.call(T, kValue, k);
+        } else {
+          A[k] = kValue;
+        }
+        k += 1;
+      }
+      // 18. Let putStatus be Put(A, "length", len, true).
+      A.length = len;
+      // 20. Return A.
+      return A;
+    };
+  }());
+}
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES2015', '#sec-array.from', 'Array.from')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ESDraft', '#sec-array.from', 'Array.from')}}{{Spec2('ESDraft')}} 
+ +

Browser compatibility

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)EdgeInternet ExplorerOperaSafari
Basic support{{CompatChrome("45")}}{{CompatGeckoDesktop("32")}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}9.0
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatNo}}{{CompatGeckoMobile("32")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/includes/index.html b/files/pl/web/javascript/reference/global_objects/array/includes/index.html new file mode 100644 index 0000000000..526e660571 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/includes/index.html @@ -0,0 +1,110 @@ +--- +title: Array.prototype.includes() +slug: Web/JavaScript/Referencje/Obiekty/Array/includes +translation_of: Web/JavaScript/Reference/Global_Objects/Array/includes +--- +
{{JSRef}}
+ +

Metoda includes() ustala czy dana tablica posiada szukany element, zwracając true lub false.

+ +

Składnia

+ +
var boolean = array.includes(searchElement[, fromIndex])
+ +

Zwraca

+ +

{{jsxref("Boolean")}}.

+ +

Parametry

+ +
+
searchElement
+
Szukany element.
+
fromIndex
+
Opcjonalne. Jest to pozycja w tablicy, od której rozpoczyna się szukanie elementu searchElement. Ujemna wartość przeszukuje tablicę od końca tablicy. Domyślna wartość wynosi 0.
+
+ +

Przykłady

+ +
[1, 2, 3].includes(2);     // true
+[1, 2, 3].includes(4);     // false
+[1, 2, 3].includes(3, 3);  // false
+[1, 2, 3].includes(3, -1); // true
+[1, 2, NaN].includes(NaN); // true
+
+ +

Polyfill

+ +
if (!Array.prototype.includes) {
+  Array.prototype.includes = function(searchElement /*, fromIndex*/ ) {
+    'use strict';
+    var O = Object(this);
+    var len = parseInt(O.length) || 0;
+    if (len === 0) {
+      return false;
+    }
+    var n = parseInt(arguments[1]) || 0;
+    var k;
+    if (n >= 0) {
+      k = n;
+    } else {
+      k = len + n;
+      if (k < 0) {k = 0;}
+    }
+    var currentElement;
+    while (k < len) {
+      currentElement = O[k];
+      if (searchElement === currentElement ||
+         (searchElement !== searchElement && currentElement !== currentElement)) { // NaN !== NaN
+        return true;
+      }
+      k++;
+    }
+    return false;
+  };
+}
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES7', '#sec-array.prototype.includes', 'Array.prototype.includes')}}{{Spec2('ES7')}}Definicja początkowa.
{{SpecName('ESDraft', '#sec-array.prototype.includes', 'Array.prototype.includes')}}{{Spec2('ESDraft')}} +

 

+
+ +

Kompatybilność przeglądarek

+ +
+
+ + +

{{Compat("javascript.builtins.Array.includes")}}

+
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/index.html b/files/pl/web/javascript/reference/global_objects/array/index.html new file mode 100644 index 0000000000..5cfe52578b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/index.html @@ -0,0 +1,279 @@ +--- +title: Array +slug: Web/JavaScript/Referencje/Obiekty/Array +tags: + - Array + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/Array +--- +
{{JSRef("Global_Objects", "Array")}}
+ +

Array  w języku JavaScript jest globalnym obiektem, który jest używany podczas tworzenia tablic – listo-podobnych obieków wysokiego poziomu.

+ +
+

Stwórz tablicę

+ +
var owoce = ['Jabłko', 'Banan'];
+
+console.log(owoce.length);
+// 2
+
+ +

Dostawanie się do elementu tablicy

+ +
var pierwszy = owoce[0];
+// Jablko
+
+var ostatni = owoce[owoce.length - 1];
+// Banan
+ +

Pętla przechodząca przez zawartość tablicy

+ +
owoce.forEach(function(item, index, array) {
+  console.log(item, index);
+});
+// Jablko 0
+// Banan 1
+ +

Dodawanie elementu na końcu tablicy

+ +
var nowaDługosc = owoce.push('Pomarańcz');
+// ["Jabłko", "Banan", "Pomarańcz"]
+ +

Usuwanie elemetu z końca tablicy

+ +
var ostatni = owoce.pop(); // usuwa pomarańczę z końca
+// ["Jabłko", "Banan"];
+ +

Usuwanie elementu z przodu tablicy

+ +
var pierwszy = owoce.shift(); // usuwa jabłko z początku
+// ["Banan"];
+ +

Dodawanie elementu z przodu tablicy

+ +
var nowaDługość = owoce.unshift('Truskawki') // dodaje na początku
+// ["Truskawkę", "Banan"];
+ +

Znajdowanie indeksu (numeru porządkowego) elementu t tablicy

+ +
owoce.push('Mango');
+// ["Truskawka", "Banan", "Mango"]
+
+var pos = owoce.indexOf('Banan');
+// 1
+ +

Usuwanie obiektu przy użyciu indeksu

+ +
var usunElement = owoce.splice(pos, 1); // tak się usuwa element
+
+// ["Truskawka", "Mango"]
+ +

Usuwanie elementów przy użyciu pozycji w indeksie

+ +
var warzywa = ["Kapusta", "Rzepa", "Rzodkiew", "Marchew"];
+console.log(warzywa);
+// ["Kapusta", "Rzepa", "Rzodkiew", "Marchew"]
+
+var pos = 1, n = 2;
+
+var usunieteElementy = warzywa.splice(pos, n);
+// n oznacza liczbę elementów do usunięcia
+// zaczynając od elementu na określonej pozycji(pos)
+
+console.log(warzywa);
+// ["Kapusta", "Marchew"] (początkowa tablica została zmieniona)
+
+console.log(usunieteElementy);
+// ["Rzepa", "Rzodkiew"]
+
+ +

Kopiowanie tablicy

+ +
var płytkaKopia = owoce.slice(); // tak się tworzy kopię
+// ["Truskawka", "Mango"]
+
+ +

Składnia:

+ +
[element0, element1, ..., elementN]
+new Array(element0, element1[, ...[, elementN]])
+new Array(długoscTablicy)
+ +
+
elementN
+
Lista wartości elementów tablicy. Tablica jest inicjowana z określonymi wartościami jako jej elementami. Długość tablicy (length) odpowiada liczbie jej elementów.
+
długośćTablicy
+
Początkowa długość tablicy. Aby móc przetwarzać wartości używamy własności długości tablicy length. Jeśli określona wartość nie jest liczbą, zostanie utworzona tablica jednoelementowa, a jej pierwszy element będzie posiadał ową wartość. Maksymalna długość tablicy wynosi 4,294,967,295 elementów.
+
+ +

Opis

+ +

Tablica jest uporządkowanym zbiorem wartości przyporządkowanych ustalonej pojedynczej zmiennej.

+ +

Poniższy przykład tworzy obiekt Array przy użyciu literału tablicy. Tablica kawa zawiera trzy elementy i ma długość (length) równą 3:

+ +
kawa = ["mocca", "cappucino", "zbożowa"]
+
+ +

Można utworzyć tzw. zwartą tablicę składającą się z dwóch lub więcej elementów, o początkowym indeksie 0, jeśli poda się początkowe wartości wszystkich elementów. Zwarta tablica to taka, w której każdy element posiada wartość. Poniższy kod tworzy zwartą tablicę o trzech elementach:

+ +
myArray = new Array("Hello", myVar, 3.14159)
+
+ +

Dostęp do elementów tablicy

+ +

Do elementów tablicy odwołujemy się po ich liczbie porządkowej (zaczynając od zera). Przykładowo, jeśli mamy zdefiniowaną tablicę:

+ +
mojaTablica = new Array("Wiatr","Deszcz","Ogień")
+
+ +

Do pierwszego elementu odwołujemy się poprzez mojaTablica[0], a do drugiego poprzez mojaTablica[1].

+ +

Podawanie pojedynczego parametru

+ +

Jeśli konstruktor Array zostanie wywołany z pojedynczym parametrem liczbowym, parametr ten zostanie uznany za początkową długość tablicy. Poniższy kod tworzy tablicę pięciu elementów:

+ +
rodzajPlatnosci = new Array(5)
+
+ +

Zachowanie konstruktora Array zależy od tego, czy jedyny parametr jest liczbą.

+ + + +

Poniższy kod tworzy tablicę o długości 25, a następnie przypisuje wartości pierwszym trzem elementom:

+ +
rodzajeMuzyki = new Array(25)
+rodzajeMuzyki[0] = "R&B"
+rodzajeMuzyki[1] = "Blues"
+rodzajeMuzyki[2] = "Jazz"
+
+ +

Pośrednie zwiększanie długości tablicy

+ +

Długość tablicy wzrasta samoczynnie, jeśli elementowi o indeksie wyższym niż obecna długość zostanie przypisana wartość. Poniższy kod tworzy tablicę o zerowej długości, a następnie przypisuje do niej 99. element. W wyniku długość tablicy zostaje zmieniona na 100.

+ +
kolory = new Array();
+kolory[99] = "ciemnoniebieski";
+
+ +

Tworzenie tablicy z wyników wyrażenia regularnego

+ +

Wynik porównania pomiędzy regularnym wyrażeniem a łańcuchem znaków może utworzyć tablicę. Ta tablica ma własności i elementy, które przekazują informacje dotyczące porównania. Tablica jest wartością zwracaną przez RegExp.exec, String.match i String.replace. Aby zrozumieć te własności spójrz na poniższy przykład odwołując się do poniższej tabeli:

+ +
//Porównuje łańcuch znaków złożony z jednego 'd' następnie kilku 'b' a następnie jednego 'd'
+//Zapamiętuje porównane 'b' i następujące 'd'
+//Ignoruje wielkość liter
+
+mojRe=/d(b+)(d)/i;
+mojaTablica = mojRe.exec("cdbBdbsbz");
+
+ +

Własności i elementy zwracają wartości z poniższej tabeli:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Własność/ElementOpisPrzykład
inputWartość tylko-do-odczytu, opisująca oryginalny łańcuch znaków, do którego porównano wyrażenie regularne.cdbBdbsbz
indexWłasność tylko-do-odczytu, będąca indeksem (zaczynając od 0) porównanego znaku w łańcuchu znaków.1
[0]Element tylko-do-odczytu, zawierający ostatnio porównane znaki.dbBd
[1], ... [n]Elementy tylko-do-odczytu, zawierające podobne podłańcuchy znaków, zawarte w wyrażeniu regularnym. Liczba możliwych podłańcuchów jest nieskończona.[1]: bB
+ [2]: d
+ +

Własności

+ +
+
+
+
{{jsxref("Array.length")}}
+
Odzwierciedla ilość elementów tablicy.
+
{{jsxref("Array.prototype")}}
+
Pozwala na dodawanie własności do wszystkich obiektów.
+
+
+
+ +

Metody

+ +
+
{{jsxref("Array.from()")}} {{experimental_inline}}
+
Tworzy nową instancję Array z obiektu podobnego do tablicy lub iterowalnego.
+
{{jsxref("Array.isArray()")}}
+
Zwraca true, jeśli zmienna jest tablicą, jeśli nie false.
+
{{jsxref("Array.observe()")}} {{experimental_inline}}
+
Asynchronicznie obserwuje zmiany w tablicach, podobnie jak {{jsxref ("Object.observe ()")}} dla obiektów. Zapewnia strumień zmian w kolejności występowania.
+
{{jsxref("Array.of()")}} {{experimental_inline}}
+
Tworzy nową instancję Array ze zmienną liczbą argumentów, niezależnie od liczby lub rodzaju argumentów.
+
+ +

Przykłady

+ +

Przykład: Tworzenie tablicy

+ +

Poniższy kod tworzy tablicę msgArray o długości 0, a następnie przypisuje wartości do msgArray[0] i msgArray[99], zwiększając długość tablicy do 100.

+ +
msgArray = new Array()
+msgArray[0] = "Witaj,"
+msgArray[99] = "świecie"
+// Poniższy warunek jest spełniony,
+// ponieważ zdefiniowano element msgArray[99].
+if (msgArray.length == 100)
+   myVar="Długość tablicy jest równa 100."
+
+ +

Przykład: Tworzenie tablicy dwuwymiarowej

+ +

Poniższy kod tworzy tablicę dwuwymiarową i przypisuje wyniki do zmiennej myVar.

+ +
myVar="Test tablicy wielowymiarowej; "
+a = new Array(4)
+for (i=0; i < 4; i++) {
+   a[i] = new Array(4)
+   for (j=0; j < 4; j++) {
+      a[i][j] = "["+i+","+j+"]"
+   }
+}
+for (i=0; i < 4; i++) {
+   str = "Wiersz "+i+":"
+   for (j=0; j < 4; j++) {
+      str += a[i][j]
+   }
+   myVar += str +"; "
+}
+
+ +

Poniższy łańcuch znaków będzie przypisany do zmiennej myVar (linie zostały przełamane dla zwiększenia czytelności):

+ +
Test tablicy wielowymiarowej;
+Wiersz 0:[0,0][0,1][0,2][0,3];
+Wiersz 1:[1,0][1,1][1,2][1,3];
+Wiersz 2:[2,0][2,1][2,2][2,3];
+Wiersz 3:[3,0][3,1][3,2][3,3];
+
+ +
diff --git a/files/pl/web/javascript/reference/global_objects/array/indexof/index.html b/files/pl/web/javascript/reference/global_objects/array/indexof/index.html new file mode 100644 index 0000000000..db63c3384c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/indexof/index.html @@ -0,0 +1,95 @@ +--- +title: Array.prototype.indexOf() +slug: Web/JavaScript/Referencje/Obiekty/Array/indexOf +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/indexOf +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zwraca pierwszy (najmniejszy) indeks elementu w tablicy równego podanej wartości lub -1, gdy nie znaleziono takiego elementu.

+ +

Składnia

+ +
array.indexOf(searchElement[, fromIndex = 0]);
+
+ +

Parametry

+ +
+
searchElement
+
Element do znalezienia w tablicy.
+
fromIndex
+
Indeks od którego ma zacząć się wyszukiwanie. Domyślnie 0 - przeszukana zostanie cała tablica. Jeżeli indeks będzie większy lub równy ilości elementów tablica nie zostanie przeszukana - funkcja zwróci -1. Jeżeli podana zostanie liczba ujemna zostanie dodany do niej rozmiar tablicy (np. podanie -5 oznacza przeszukiwanie od 5 elementu od końca). Jeżeli tak obliczony indeks jest mniejszy od zera przeszukana zostanie cała tablica. Uwaga, wyszukiwanie dalej będzie się odbywać w kierunku rosnących indeksów.
+
+ +

Opis

+ +

indexOf porównuje searchElement z elementami tablicy używając ścisłego porównania (podobnie jak w przypadku operatora ===).

+ +

Kompatybilność

+ +

indexOf jest rozszerzeniem JavaScript dla standardu ECMA-262, więc może nie być obecny w innych implementacjach tego standardu. Można to obejść, dopisując poniższy kod na początku skryptu, zezwalający na użycie indexOf w implementacji ECMA-262, które nie wspierają tego natywnie.

+ +
if (!Array.prototype.indexOf)
+{
+  Array.prototype.indexOf = function(elt /*, from*/)
+  {
+    var len = this.length;
+
+    var from = Number(arguments[1]) || 0;
+    from = (from < 0)
+         ? Math.ceil(from)
+         : Math.floor(from);
+    if (from < 0)
+      from += len;
+
+    for (; from < len; from++)
+    {
+      if (from in this &&
+          this[from] === elt)
+        return from;
+    }
+    return -1;
+  };
+}
+
+ +

Należy zwrócić uwagę, że ta implementacja ma na celu całkowitą zgodność z indexOf występującą w Firefoksie i silniku JavaScript SpiderMonkey, włączając w to przypadki w których przesyłany do indexOf indeks nie jest wartością liczbową. Jeśli masz zamiar wykorzystać przytoczone rozwiązanie w rzeczywistych aplikacjach, możesz nie potrzebować całego powyższego kodu (części odpowiedzialnej za obliczenie wartości from).

+ +

Przykłady

+ +

Przykład: Zastosowanie indexOf

+ +

Następujący przykład stosuje indexOf do znalezienia pierwszego wystąpienia elementów.

+ +
array = [2, 5, 9];
+index = array.indexOf(2);
+// index jest 0
+index = array.indexOf(7);
+// index jest -1
+
+ +

Przykład: Wyszukiwanie wszystkich wystąpień w tablicy

+ +

Poniższy przykład używa indexOf do znalezienia wszystkich wystąpień elementu w tablicy oraz dodaje ich indeksy do drugiej tablicy używając metody {{jsxref("Array.prototype.push()")}}.

+ +
indices = [];
+idx = array.indexOf(element)
+while (idx != -1) {
+   indices.push(idx);
+   idx = array.indexOf(element, idx + 1);
+}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/isarray/index.html b/files/pl/web/javascript/reference/global_objects/array/isarray/index.html new file mode 100644 index 0000000000..62083e0853 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/isarray/index.html @@ -0,0 +1,139 @@ +--- +title: Array.isArray() +slug: Web/JavaScript/Referencje/Obiekty/Array/isArray +translation_of: Web/JavaScript/Reference/Global_Objects/Array/isArray +--- +
{{JSRef("Global_Objects", "Array")}}
+ +

Podsumowanie

+ +

Array.isArray() to metoda, która zwraca true  jeśli obiekt jest tablicą, fałsz jeśli nie jest.

+ +

Składnia

+ +
Array.isArray(obj)
+ +

Parametry

+ +
+
obj
+
Obiekt do sprawdzenia
+
+ +

Opis

+ +

Zobacz artykuł  “Determining with absolute accuracy whether or not a JavaScript object is an array” , aby poznać więcej szczegółów.

+ +

Przykłady

+ +
// poniższe przykłady zwrócą true
+Array.isArray([]);
+Array.isArray([1]);
+Array.isArray(new Array());
+// Mało znany fakt: Array.prototype sam w sobie jest tablicą:
+Array.isArray(Array.prototype);
+
+// poniższe przykłady zwrócą false
+Array.isArray();
+Array.isArray({});
+Array.isArray(null);
+Array.isArray(undefined);
+Array.isArray(17);
+Array.isArray('Array');
+Array.isArray(true);
+Array.isArray(false);
+Array.isArray({ __proto__: Array.prototype });
+
+ +

Dostępność wsteczna

+ +

Jeśli metody Array.isArray() nie jest natywnie dostępna, poniższy kod ją utworzy.

+ +
if (!Array.isArray) {
+  Array.isArray = function(arg) {
+    return Object.prototype.toString.call(arg) === '[object Array]';
+  };
+}
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES5.1', '#sec-15.4.3.2', 'Array.isArray')}}{{Spec2('ES5.1')}}Wstępna definicja. Implementacja od  JavaScript 1.8.5.
{{SpecName('ES6', '#sec-array.isarray', 'Array.isArray')}}{{Spec2('ES6')}} 
+ +

Zgodność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatChrome("5")}}{{CompatGeckoDesktop("2.0")}}{{CompatIE("9")}}{{CompatOpera("10.5")}}{{CompatSafari("5")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile("2.0")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Based on Kangax's compat table.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/join/index.html b/files/pl/web/javascript/reference/global_objects/array/join/index.html new file mode 100644 index 0000000000..b4b22afc49 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/join/index.html @@ -0,0 +1,50 @@ +--- +title: Array.prototype.join() +slug: Web/JavaScript/Referencje/Obiekty/Array/join +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/join +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Łączy wszystkie elementy tablicy w jeden łańcuch znaków.

+ +

Składnia

+ +
str = arr.join([separator = ','])
+ +

Parametry

+ +
+
separator 
+
Określa łańcuch znaków użyty do oddzielenia każdego z elementów tablicy. W razie konieczności separator jest konwertowany do łańcucha znaków. Jeśli parametr zostanie pominięty, elementy tablicy będą rozdzielone za pomocą przecinka.
+
+ +

Opis

+ +

Metoda join zmienia w łańcuchy znaków wszystkie elementy tablicy i łączy je w jeden łańcuch znaków.

+ +

Przykłady

+ +

Przykład: Łączenie tablicy na trzy różne sposoby

+ +

Poniższy przykład tworzy trzyelementową tablicę a zawierającą trzy elementy, następnie trzykrotnie łączy ją: używając domyślnego separatora, przecinka i spacji oraz znaku plus.

+ +
var a = new Array("Wiatr","Deszcz","Ogień");
+var myVar1 = a.join()      // przypisuje "Wiatr,Deszcz,Ogień" do myVar1
+var myVar2 = a.join(", ")  // przypisuje "Wiatr, Deszcz, Ogień" do myVar2
+var myVar3 = a.join(" + ") // przypisuje "Wiatr + Deszcz + Ogień" do myVar3
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/keys/index.html b/files/pl/web/javascript/reference/global_objects/array/keys/index.html new file mode 100644 index 0000000000..4ab6d7e18e --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/keys/index.html @@ -0,0 +1,120 @@ +--- +title: Array.prototype.keys() +slug: Web/JavaScript/Referencje/Obiekty/Array/keys +translation_of: Web/JavaScript/Reference/Global_Objects/Array/keys +--- +
{{JSRef}}
+ +

Metoda keys() zwraca nowy obiekt typu Array Iterator zawierający indeksy kolejnych elementów tablicy.

+ +
var arr = ['a', 'b', 'c'];
+var iterator = arr.keys();
+
+console.log(iterator.next()); // { value: 0, done: false }
+console.log(iterator.next()); // { value: 1, done: false }
+console.log(iterator.next()); // { value: 2, done: false }
+console.log(iterator.next()); // { value: undefined, done: true }
+
+ +

Składnia

+ +
arr.keys()
+ +

Zwracana wartość

+ +

Nowy iterator dla typu {{jsxref("Array")}}.

+ +

Przykłady

+ +

Iterator nie ignoruje dziur

+ +
var arr = ['a', , 'c'];
+var sparseKeys = Object.keys(arr);
+var denseKeys = [...arr.keys()];
+console.log(sparseKeys); // ['0', '2']
+console.log(denseKeys);  // [0, 1, 2]
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-array.prototype.keys', 'Array.prototype.keys')}}{{Spec2('ES2015')}}Pierwsze wystąpienie.
{{SpecName('ESDraft', '#sec-array.prototype.keys', 'Array.prototype.keys')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)EdgeInternet ExplorerOperaSafari
Basic support{{CompatChrome("38")}}{{CompatGeckoDesktop("28")}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatOpera("25")}}{{CompatSafari("7.1")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatNo}}{{CompatGeckoMobile("28")}}{{CompatNo}}{{CompatNo}}8.0
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/lastindexof/index.html b/files/pl/web/javascript/reference/global_objects/array/lastindexof/index.html new file mode 100644 index 0000000000..3a6322d6b4 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/lastindexof/index.html @@ -0,0 +1,114 @@ +--- +title: Array.prototype.lastIndexOf() +slug: Web/JavaScript/Referencje/Obiekty/Array/lastIndexOf +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/lastIndexOf +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zwraca ostatni indeks, pod którym podany element może być znaleziony w tablicy, lub -1 jeśli nie jest obecny. Tablica jest przeszukiwana od końca, zaczynając od indeksu fromIndex

+ +

Składnia

+ +
arr.lastIndexOf(searchElement[, fromIndex = arr.length])
+ +

Parametry

+ +
+
searchElement
+
Element do znalezienia w tablicy.
+
fromIndex
+
Indeks od którego ma zostać rozpoczęte wyszukiwanie od tyłu. Domyślnie jest to długość tablicy, tzn. przeszukana zostanie cała tablica. Jeśli indeks jest większy od lub równy długości tablicy, przeszukana zostanie cała tablica. Jeśli jest ujemny, traktowany będzie jako przesunięcie od końca tablicy. Należy pamiętać, że nawet jeśli indeks jest ujemny, to i tak tablica przeszukiwana jest od końca do początku. Jeśli obliczony indeks jest mniejszy od 0, zwracana jest wartość -1, innymi słowy, tablica nie zostanie przeszukana.
+
+ +

Opis

+ +

lastIndexOf porównuje searchElement z elementami tablicy używając ścisłego porównania (podobnie jak w przypadku operatora ===).

+ +

Kompatybilność

+ +

lastIndexOf jest rozszerzeniem JavaScript dla standardu ECMA-262, więc może nie być obecny w innych implementacjach tego standardu. Można to obejść, dopisując poniższy kod na początku skryptu, zezwalający na użycie lastIndexOf w implementacji ECMA-262, które nie wspierają tego natywnie.

+ +
if (!Array.prototype.lastIndexOf)
+{
+  Array.prototype.lastIndexOf = function(elt /*, from*/)
+  {
+    var len = this.length;
+
+    var from = Number(arguments[1]);
+    if (isNaN(from))
+    {
+      from = len - 1;
+    }
+    else
+    {
+      from = (from < 0)
+           ? Math.ceil(from)
+           : Math.floor(from);
+      if (from < 0)
+        from += len;
+      else if (from >= len)
+        from = len - 1;
+    }
+
+    for (; from > -1; from--)
+    {
+      if (from in this &&
+          this[from] === elt)
+        return from;
+    }
+    return -1;
+  };
+}
+
+ +

Należy zwrócić uwagę, że ta implementacja ma na celu całkowitą zgodność z lastIndexOf występującą w Firefoksie i silniku JavaScript SpiderMonkey, włączając w to przypadki skrajne. Jeśli masz zamiar wykorzystać przytoczone rozwiązanie w rzeczywistych aplikacjach, możesz obliczyć from za pomocą mniej skomplikowanego kodu (z pominięciem części instrukcji warunkowych).

+ +

Przykłady

+ +

Przykład: Zastosowanie lastIndexOf

+ +

Poniższy przykład używa lastIndexOf do znalezienia określonych wartości w tablicy.

+ +
array = [2, 5, 9, 2];
+index = array.lastIndexOf(2);
+// index is 3
+index = array.lastIndexOf(7);
+// index is -1
+index = array.lastIndexOf(2, 3);
+// index is 3
+index = array.lastIndexOf(2, 2);
+// index is 0
+index = array.lastIndexOf(2, -2);
+// index is 0
+index = array.lastIndexOf(2, -1);
+// index is 3
+
+ +

Przykład: Wyszukiwanie wszystkich wystąpień danego elementu

+ +

Poniższy przykład używa lastIndexOf do znalezienia wszystkich wystąpień elementu w tablicy oraz dodaje ich indeksy do drugiej tablicy używając metody push.

+ +
indices = [];
+idx = array.lastIndexOf(element)
+while (idx != -1) {
+   indices.push(idx);
+   idx = (idx > 0 ? array.lastIndexOf(element, idx - 1) : -1);
+}
+
+ +

Warto zauważyć, że obsłużyliśmy warunek idx == 0 oddzielnie, ponieważ element ten zostanie zawsze odnaleziony - bez względu na wartość parametru fromIndex - w przypadku gdy jest on pierwszym elementem tablicy. To różni tę metodę od metody {{jsxref("Array.prototype.indexOf()")}}.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/length/index.html b/files/pl/web/javascript/reference/global_objects/array/length/index.html new file mode 100644 index 0000000000..0ce2bbde35 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/length/index.html @@ -0,0 +1,53 @@ +--- +title: Array.prototype.length +slug: Web/JavaScript/Referencje/Obiekty/Array/length +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/length +--- +
{{JSRef("Global_Objects", "Array")}}
+ +

Podsumowanie

+ +

32-bitowa liczba całkowita bez znaku określająca liczbę elementów w tablicy.

+ +
{{js_property_attributes(1, 0, 0)}}
+ +
+

Składnia

+ +
arr.length
+
+ +

Opis

+ +

Wartością własności length jest dodatnia liczba całkowita mniejsza niż 2 do potęgi 32 (232).

+ +

W dowolnej chwili możesz ustalić wartość length w celu zmniejszenia rozmiaru tablicy. Ustawienie wartości length na większą niż rozmiar tablicy nie zwiększy liczby elementów, np. jeżeli ustawisz length na 3, podczas gdy obecną wartością jest liczba 2, tablica nadal będzie zawierać tylko 2 elementy.

+ +

Przykłady

+ +

Przykład: Iteracja przez wszystkie elementy tablicy

+ +

W poniższym przykładzie ilość elementów w tablicy numbers jest określana w instrukcji iteracyjnej na podstawie wartości length, następnie wartość każdego elementu jest podwajana.

+ +
var numbers = [1,2,3,4,5];
+for (var i = 0; i < numbers.length; i++) {
+  numbers[i] *= 2;
+}
+// zawartość tablicy to teraz [2,4,6,8,10];
+
+ +

Przykład: Skracanie tablicy

+ +

Poniższy przykład zmniejsza rozmiar tablicy statesUS do 50, jeżeli przekracza on tę wartość.

+ +
if (statesUS.length > 50) {
+   statesUS.length=50
+}
+
+ +
 
diff --git a/files/pl/web/javascript/reference/global_objects/array/map/index.html b/files/pl/web/javascript/reference/global_objects/array/map/index.html new file mode 100644 index 0000000000..2b25e7f1cd --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/map/index.html @@ -0,0 +1,93 @@ +--- +title: Array.prototype.map() +slug: Web/JavaScript/Referencje/Obiekty/Array/map +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/map +--- +
{{JSRef}}
+ +

Metoda map() tworzy nową tablicę zawierającą wyniki wywoływania podanej funkcji dla każdego elementu wywołującej tablicy.

+ +
var liczby = [1, 5, 10, 15];
+var podwojenia = liczby.map(function(x) {
+    return x * 2;
+});
+// podwojenia to teraz [2, 10, 20, 30]
+// liczby to dalej [1, 5, 10, 15]
+
+var liczby = [1, 4, 9];
+var pierwiastki = liczby.map(Math.sqrt);
+// pierwiastki to teraz [1, 2, 3]
+// liczby to dalej [1, 4, 9]
+
+ +

Składnia

+ +
var new_array = arr.map(function callback(currentValue, index, array){ // Zwróć element nowej tablicy }[, thisArg])
+ +

Parametry

+ +
+
callback
+
Funkcja tworząca element nowej tablicy, przyjmująca trzy argumenty:
+
+
+
currentValue
+
Element tablicy nad którym obecnie pracujemy
+
index
+
Indeks elementu tablicy nad którym obecnie pracujemy
+
array
+
Oryginalna tablica na rzecz której wywołano metodę map
+
+
+
thisArg
+
Opcjonalny. Wartość jaką użyć jako this podczas wywołania callback
+
+ +

Zwracana wartość

+ +

Nowa tablica zawierająca elementy będące wynikami wywoływani funkcji callback.

+ +

Opis

+ +

map wykonuje funkcję (callback) raz na każdym z elementów tablicy w kolejności i tworzy nową tablicę na podstawie wyników. callback wywoływany jest tylko dla indeksów tablicy które mają przypisane wartości, włącznie z undefined. Nie jest wywoływany dla brakujących elementów tablicy (indeksów które nigdy nie były ustawione, usunięte lub nie miały nigdy przypisanych wartości).

+ +

callback wywoływana jest z trzema argumentami: wartością elementu, jego indeksem i tablicą która jest trawersowana.

+ +

W przypadku podania argumentu thisObject, zostanie on przekazany jako this przy każdym wywołaniu callback. Gdy go brak, lub ma wartość null, użyty zostanie obiekt globalny przyporządkowany do callback.

+ +

map nie modyfikuje tablicy, na której jest wywołany.

+ +

Zakres elementów przetwarzanych przez map ustalany jest przed pierwszym wywołaniem callback. Elementy dodane do tablicy po wywołaniu map nie zostaną odwiedzone przez callback. Jeśli istniejący, element tablicy zostanie zmieniony lub usunięty, wartością przekazaną do callback będzie wartość z momentu w którym map odwiedza dany element; elementy usunięte przed sprawdzeniem będą przekazane jako undefined.

+ +

Przykłady

+ +

Wielkie litery łańcuchów w tablicy

+ +

Poniższy kod tworzy nową tablicę zawierającą pisaną wielkimi literami wersję wszystkich oryginalnych łańcuchów.

+ +
var strings = ["hello", "Array", "WORLD"];
+function makeUpperCase(v)
+{
+    return v.toUpperCase();
+}
+var uppers = strings.map(makeUpperCase);
+// uppers są teraz pisane wielkimi literami ["HELLO", "ARRAY", "WORLD"]
+// strings są niezmienione
+
+ +

Mapowanie tablicy liczb do tablicy pierwiastków kwadratowych

+ +

Poniższy kod pobiera tablicę liczb i tworzy nową tablicę z pierwiastkami kwadratowymi liczb z pierwszej tablicy.

+ +
var liczby = [1, 4, 9];
+var pierwiastki = liczby.map(Math.sqrt);
+// otrzymane pierwiastki [1, 2, 3]
+// pozostające nadal liczby [1, 4, 9]
+
+ +

 

diff --git a/files/pl/web/javascript/reference/global_objects/array/of/index.html b/files/pl/web/javascript/reference/global_objects/array/of/index.html new file mode 100644 index 0000000000..74c9974bd0 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/of/index.html @@ -0,0 +1,92 @@ +--- +title: Array.of() +slug: Web/JavaScript/Referencje/Obiekty/Array/of +translation_of: Web/JavaScript/Reference/Global_Objects/Array/of +--- +
{{JSRef}}
+ +

Metoda Array.of() tworzy nową instancję obiektu Array, która zawiera w sobie wszystkie argumenty przekazane do funkcji, niezależnie od ich liczby i typu.

+ +

Różnica pomiędzy Array.of() i konstruktorem Array polega na różnej interpretacji argumentów - Array.of(7) tworzy nową tablicę z jednym elementem(7), gdzie Array(7) tworzy nową tablicę z właściwością length ustawioną na 7 (Notatka: Oznacza to tablicę z 7 wolnymi miejscami, nie miejscami z wartościami undefined).

+ +
Array.of(7);       // [7]
+Array.of(1, 2, 3); // [1, 2, 3]
+
+Array(7);          // [ , , , , , , ]
+Array(1, 2, 3);    // [1, 2, 3]
+
+ +

Składnia

+ +
Array.of(element0[, element1[, ...[, elementN]]])
+ +

Parametry

+ +
+
elementN
+
Elementy, które tworzą tablicę.
+
+ +

Wartość zwracana

+ +

Nowa instancja obiektu {{jsxref("Array")}}.

+ +

Opis

+ +

Ta funkcja jest częścią standardu ECMAScript 2015. Po więcej informacji zobacz Array.of and Array.from proposal i Array.of polyfill.

+ +

Przykłady

+ +
Array.of(1);         // [1]
+Array.of(1, 2, 3);   // [1, 2, 3]
+Array.of(undefined); // [undefined]
+
+ +

Polyfill

+ +

Uruchomienie tego kodu przed innym stworzy Array.of() nawet jeśli nie jest ona dostępna natywnie.

+ +
if (!Array.of) {
+  Array.of = function() {
+    return Array.prototype.slice.call(arguments);
+  };
+}
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-array.of', 'Array.of')}}{{Spec2('ES2015')}}Początkowa definicja.
{{SpecName('ESDraft', '#sec-array.of', 'Array.of')}}{{Spec2('ESDraft')}} 
+ +

Browser compatibility

+ +
+ + +

{{Compat("javascript.builtins.Array.of")}}

+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/pop/index.html b/files/pl/web/javascript/reference/global_objects/array/pop/index.html new file mode 100644 index 0000000000..2b7483dbd7 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/pop/index.html @@ -0,0 +1,138 @@ +--- +title: Array.prototype.pop() +slug: Web/JavaScript/Referencje/Obiekty/Array/pop +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Metodă + - Prototype + - Tablica +translation_of: Web/JavaScript/Reference/Global_Objects/Array/pop +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Usuwa ostatni element z tablicy zwracając go. Metoda ta zmienia długość tablicy.

+ +

Składnia

+ +
arr.pop()
+ +

Zwracana wartość

+ +

Ostatni element tablicy;
+ Jeśli tablica jest pusta zwraca {{jsxref("undefined")}}

+ +

Opis

+ +

Metoda pop usuwa ostatni element tablicy i zwraca tę wartość.

+ +

pop is intentionally generic. Metoda ta może być {{jsxref("Function.call", "called", "", 1)}} lub {{jsxref("Function.apply", "applied", "", 1)}} do obiektu przypominającego tablice. Obiekty, które nie posiadają właściwości length odzwierciedlającej ostani element w serii, przy właściwościach liczonych od zera nie mogą zachowywać się w żaden znaczący sposób.

+ +

Jeśli zawołasz  pop() na pustej tablicy, zwróci ona {{jsxref("undefined")}}.

+ +

Przykład

+ +

Przykład: Usuwanie ostatniego elementu tablicy

+ +

Następujący kod tworzy tablicę myFish zawierającą cztery elementy, a następnie usuwa ostatni jej element.

+ +
var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];
+
+console.log(myFish); // ['angel', 'clown', 'mandarin', 'sturgeon']
+
+var popped = myFish.pop();
+
+console.log(myFish); // ['angel', 'clown', 'mandarin' ]
+
+console.log(popped); // 'sturgeon'
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES3')}}{{Spec2('ES3')}}Initial definition. Implemented in JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.4.4.6', 'Array.prototype.pop')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-array.prototype.pop', 'Array.prototype.pop')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-array.prototype.pop', 'Array.prototype.pop')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ +

{{CompatibilityTable}}

+ + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatChrome("1.0")}}{{CompatGeckoDesktop("1.7")}}{{CompatIE("5.5")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+ + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/push/index.html b/files/pl/web/javascript/reference/global_objects/array/push/index.html new file mode 100644 index 0000000000..92bf342cda --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/push/index.html @@ -0,0 +1,51 @@ +--- +title: Array.prototype.push() +slug: Web/JavaScript/Referencje/Obiekty/Array/push +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/push +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Dodaje jeden lub więcej elementów na koniec tablicy i zwraca jej nową długość. Metoda ta zmienia długość tablicy.

+ +

Składnia

+ +
arr.push(element1, ..., elementN)
+ +

Parametry

+ +
+
element + N +  
+
Elementy dodawane na końcu tablicy.
+
+ +

Opis

+ +

Zachowanie metody push jest analogiczne do funkcji push w języku Perl 4. Uwaga: jej zachowanie różni się w języku Perl 5.

+ +

Przykłady

+ +

Przykład: Dodawanie elementów do tablicy

+ +

Następujący kod tworzy tablicę myFish zawierającą dwa elementy, następnie dodaje do niej dwa kolejne. Po wykonaniu kodu, pushed zawiera wartość 4 (w JavaScript 1.2 po wykonaniu kodu zmienna pushed zawiera wartość "lew").

+ +
myFish = ["anioł", "klaun"];
+pushed = myFish.push("bęben", "lew");
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/reduce/index.html b/files/pl/web/javascript/reference/global_objects/array/reduce/index.html new file mode 100644 index 0000000000..8699a308c5 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/reduce/index.html @@ -0,0 +1,300 @@ +--- +title: Array.prototype.reduce() +slug: Web/JavaScript/Referencje/Obiekty/Array/Reduce +translation_of: Web/JavaScript/Reference/Global_Objects/Array/Reduce +--- +
{{JSRef("Global_Objects", "Array")}}
+ +

Podsumowanie

+ +

Metoda reduce() wywołuje funkcję względem wartości przyrostowej z każdego wywołania i kolejnego elementu tablicy (od lewej do prawej) w celu sprowadzenia tej tablicy do pojedynczej wartości.

+ +

Składnia

+ +
arr.reduce(callback(accumulator, currentValue[, index[, array]])[, initialValue])
+ +

Parametry

+ +
+
callback
+
Funkcja wykonywana na każdej wartości w tablicy, przyjmuje cztery argumenty: +
+
previousValue
+
+
Wartość zwróconą w ostatnim wywołaniu funkcji callback, lub initialValue, jeśli ta została dostarczona. (Patrz niżej.)
+
currentValue
+
Obecnie przetwarzany element w tablicy.
+
index
+
Indeks w tablicy obecnie przetwarzanego elementu.
+
array
+
Tablica, na której została wykonana funkcja reduce .
+
+
+
initialValue
+
Opcjonalne. Obiekt który będzie użyty jako pierwszy argument pierwszego wywołania funkcji callback.
+
+ +

Opis

+ +

reduce wykonuje funkcję callback raz dla każdego elementu występującego w tablicy, wyłączając dziury. Funkcja callback przyjmuje cztery argumenty: wartość początkową (lub wartość poprzedniego wywołania callback), wartość obecnego elementu, jego indeks, oraz tablicę na której zachodzi proces iteracji.

+ +

Przy pierwszym wywołaniu funkcji callback, previousValue oraz currentValue mogą przyjąć jedną z dwóch wartości. Jeżeli initialValue było dostarczone w wywołaniu, wtedy previousValue przyjmie wartość podaną jako initialValue, natomiast currentValue przyjmie wartość pierwszego elementu tablicy. Jeśli initialValue nie było podane, wtedy previousValue będzie miało wartość pierwszego elementu tablicy, natomiast currentValue będzie równe elementowi drugiemu.

+ +

Jeżeli tablica jest pusta oraz initialValue nie zostało dostarczone, będzie rzucony błąd {{jsxref("Global_Objects/TypeError", "TypeError")}}. Jeśli natomiast tablica ma jeden tylko element (bez względu na jego pozycję) i initialValue nie zostało podane, lub dostarczono initialValue, ale tablica jest pusta, wtedy ta jedyna wartość zostanie zwrócona, bez wywoływania funkcji callback.

+ +

Przyjmijmy, że wystąpiło następujące wywolanie funkcji reduce:

+ +
[0, 1, 2, 3, 4].reduce(function(previousValue, currentValue, index, array) {
+  return previousValue + currentValue;
+});
+
+ +

Funkcja callback będzie wywołana cztery razy, z argumentami i wartościami zwrotnymi przy każdym wołaniu jak następuje:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
previousValuecurrentValueindexarraywartość zwracana
pierwsze wywołanie011[0, 1, 2, 3, 4]1
drugie wywołanie122[0, 1, 2, 3, 4]3
trzecie wywołanie333[0, 1, 2, 3, 4]6
czwarte wywołanie644[0, 1, 2, 3, 4]10
+ +

Wartość zwrócona ostatecznie przez reduce będzie tą z ostatniego wywołania funcji callback (10).

+ +

Natomiast, jeśli dostarczylibyśmy wartość początkową jako drugi argument funkcji przekazanej do reduce, wynik wyglądałby jak poniżej:

+ +
[0, 1, 2, 3, 4].reduce(function(previousValue, currentValue, index, array) {
+  return previousValue + currentValue;
+}, 10);
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
previousValuecurrentValueindexarraywartość zwracana
pierwsze wywołanie1000[0, 1, 2, 3, 4]10
drugie wywołanie1011[0, 1, 2, 3, 4]11
trzecie wywołanie1122[0, 1, 2, 3, 4]13
czwarte wywołanie1333[0, 1, 2, 3, 4]16
piąte wywołanie1644[0, 1, 2, 3, 4]20
+ +

Tym razem wartość zwrócona przez reduce będzie wynosiła 20.

+ +

Przykłady

+ +

Przykład: Zsumowanie wszystkich wartości w tablicy.

+ +
var total = [0, 1, 2, 3].reduce(function(a, b) {
+  return a + b;
+});
+// total == 6
+
+ +

Przykład: Spłaszczenie tablicy tablic

+ +
var flattened = [[0, 1], [2, 3], [4, 5]].reduce(function(a, b) {
+  return a.concat(b);
+});
+// flattened is [0, 1, 2, 3, 4, 5]
+
+ +

Polyfill

+ +

Array.prototype.reduce zostało dodane do standardu ECMA-262 w edycji piątej i jako takie może nie występować we wszystkich implementacji standardu. Można obejśc ten brak poprzez wstawienie poniższego kodu na początku skryptu, co pozwala na użycie reduce z implementacjami, które nie wspierają tej funkcji.

+ +
// Production steps of ECMA-262, Edition 5, 15.4.4.21
+// Reference: http://es5.github.io/#x15.4.4.21
+if (!Array.prototype.reduce) {
+  Array.prototype.reduce = function(callback /*, initialValue*/) {
+    'use strict';
+    if (this == null) {
+      throw new TypeError('Array.prototype.reduce called on null or undefined');
+    }
+    if (typeof callback !== 'function') {
+      throw new TypeError(callback + ' is not a function');
+    }
+    var t = Object(this), len = t.length >>> 0, k = 0, value;
+    if (arguments.length == 2) {
+      value = arguments[1];
+    } else {
+      while (k < len && !(k in t)) {
+        k++;
+      }
+      if (k >= len) {
+        throw new TypeError('Reduce of empty array with no initial value');
+      }
+      value = t[k++];
+    }
+    for (; k < len; k++) {
+      if (k in t) {
+        value = callback(value, t[k], k, t);
+      }
+    }
+    return value;
+  };
+}
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStanKomentarz
{{SpecName('ES5.1', '#sec-15.4.4.21', 'Array.prototype.reduce')}}{{Spec2('ES5.1')}}Definicja początkowa. Wprowadzon w JavaScript 1.8.
{{SpecName('ES6', '#sec-array.prototype.reduce', 'Array.prototype.reduce')}}{{Spec2('ES6')}}
+ +

Wspierane przeglądarki

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatGeckoDesktop("1.9")}}{{CompatIE("9")}}{{CompatOpera("10.5")}}{{CompatSafari("4.0")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/reduceright/index.html b/files/pl/web/javascript/reference/global_objects/array/reduceright/index.html new file mode 100644 index 0000000000..fcb2b0e694 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/reduceright/index.html @@ -0,0 +1,344 @@ +--- +title: Array.prototype.reduceRight() +slug: Web/JavaScript/Referencje/Obiekty/Array/ReduceRight +translation_of: Web/JavaScript/Reference/Global_Objects/Array/ReduceRight +--- +
{{JSRef}}
+ +

Metoda reduceRight() przekazuje do funkcji wartość przyrostową dla każdego elementu w tablicy zaczynając od prawej do lewej (od najwyższego indexu do najniższego) w celu sprowadzenia tablicy do pojedynczej wartości.

+ +
{{EmbedInteractiveExample("pages/js/array-reduce-right.html","shorter")}}
+ + + +

Sprawdź również {{jsxref("Array.prototype.reduce()")}} dla redukowania tablicy od lewej do prawej (od najniższego indexu do najwyższego).

+ +

Składnia

+ +
arr.reduceRight(callback(akumulator, obecnaWartość[, index[, tablica]])[, wartośćPoczątkowa])
+ +

Parametry

+ +
+
callback
+
Funkcja która będzie wołana dla każdego elementu w tablicy, przyjmuje 4 argumenty: +
+
akumulator
+
Wartość zwrócona z poprzedniego wywołania funkcji callback lub wartośćPoczątkowa, jeśli została zdefiniowana. (Sprawdź poniżej.)
+
obecnaWartość
+
Element z tablicy, który aktualnie jest przetwarzany
+
index{{optional_inline}}
+
Index aktualnie przetwarzanego elementu z tablicy.
+
tablica{{optional_inline}}
+
Tablica, na której reduceRight() zostało zawołane.
+
+
+
wartośćPoczątkowa{{optional_inline}}
+
Wartość, która zostanie użyta do pierwszego wykonania funkcji callback. Jeśli wartość ta nie zostanie zdefiniowana, ostatni element tablicy zostanie użyty i pominięty. Wołanie reduce lub reduceRight na pustej tablicy bez zdefiniowanej wartości początkowej spowoduje błąd TypeError.
+
+ +

Wartość zwracana

+ +

Wartość wynikowa redukcji.

+ +

Opis

+ +

reduceRight wykonuje funkcję callback dla każdego elementu z tablicy, z wyłączeniem miejsc niezdefiniowanych w tablicy, przekazując cztery argumenty: wartość początkową (lub wartość z poprzedniego wywołania funkcji callback), wartość obecnie przetwarzanego elementu, obecny index oraz tablicę na której wykonywane są iteracje.

+ +

Użycie funkcji callback w metodzie reduceRight może wyglądac następująco:

+ +
array.reduceRight(function(akumulator, obecnaWartość, index, tablica) {
+  // ...
+});
+
+ +

Przy pierwszym wywołaniu funkcji, akumulator i obecnaWartość mogą mieć jedną z 2 wartości. Jeśli wartośćPoczątkowa została przekazana do reduceRight, to akumulator będzie równy wartośćPoczątkowaobecnaWartość będzie równa ostatniej wartości z tablicy. Jeśli wartośćPoczątkowa nie została zdefiniowana, wtedy akumulator będzie równy ostatniej wartości z tablicy a obecnaWartość będzie równa przedostatniej wartości z tablicy.

+ +

Jeśli tablica jest pusta i wartośćPoczątkowa nie została zdefiniowana, spowoduje to błąd: {{jsxref("TypeError")}}. Jeśli tablica ma tylko jeden element (niezależnie od jego pozycji) i wartośćPoczątkowa nie została zdefiniowana lub wartośćPoczątkowa została zdefiniowana ale tablica jest pusta, to ta pojedyncza wartość zostanie zwrócona bez wołania funkcji callback.

+ +

Przykład pokazujący, jak przepływają dane do funkcji callback:

+ +
[0, 1, 2, 3, 4].reduceRight(function(akumulator, obecnaWartość, index, tablica) {
+  return akumulator + obecnaWartość;
+});
+
+ +

Funkcja callback wykona się 4 razy a argumenty wywołań oraz wartości zwracane będą zgodne z poniższą tabelą:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
callbackakumulatorobecnaWartośćindextablicazwrócona wartość
first call433[0, 1, 2, 3, 4]7
second call722[0, 1, 2, 3, 4]9
third call911[0, 1, 2, 3, 4]10
fourth call1000[0, 1, 2, 3, 4]10
+ +

Wartość zwrócona przez reduceRight będzie tym, co zostało zwrócone przez ostatnie wywołanie funkcji callback (10).

+ +

Jeśli wartośćPoczątkowa zostałaby zdefiniowana wyniki wyglądałyby następująco:

+ +
[0, 1, 2, 3, 4].reduceRight(function(akumulator, obecnaWartość, index, tablica) {
+  return akumulator + obecnaWartość;
+}, 10);
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
callbackakumulatorobecnaWartośćindextablicazwrócona wartość
first call1044[0, 1, 2, 3, 4]14
second call1433[0, 1, 2, 3, 4]17
third call1722[0, 1, 2, 3, 4]19
fourth call1911[0, 1, 2, 3, 4]20
fifth call2000[0, 1, 2, 3, 4]20
+ +

Wartość zwrócona przez reduceRight w tym przypadku, będzie, oczywiście, 20.

+ +

Przykłady

+ +

Zsumuj wszystkie wartości z tablicy

+ +
var sum = [0, 1, 2, 3].reduceRight(function(a, b) {
+  return a + b;
+});
+// sum is 6
+
+ +

Spłaszcz tablicę tablic

+ +
var flattened = [[0, 1], [2, 3], [4, 5]].reduceRight(function(a, b) {
+    return a.concat(b);
+}, []);
+// flattened is [4, 5, 2, 3, 0, 1]
+
+
+ +

Uruchom asynchroniczne funkcje z callbackami z listy w taki sposób aby każda przekazywała wynik wykonania do następnej

+ +
const waterfall = (...functions) => (callback, ...args) =>
+  functions.reduceRight(
+    (composition, fn) => (...results) => fn(composition, ...results),
+    callback
+  )(...args);
+
+const randInt = max => Math.floor(Math.random() * max)
+
+const add5 = (callback, x) => {
+  setTimeout(callback, randInt(1000), x + 5);
+};
+const mult3 = (callback, x) => {
+  setTimeout(callback, randInt(1000), x * 3);
+};
+const sub2 = (callback, x) => {
+  setTimeout(callback, randInt(1000), x - 2);
+};
+const split = (callback, x) => {
+  setTimeout(callback, randInt(1000), x, x);
+};
+const add = (callback, x, y) => {
+  setTimeout(callback, randInt(1000), x + y);
+};
+const div4 = (callback, x) => {
+  setTimeout(callback, randInt(1000), x / 4);
+};
+
+const computation = waterfall(add5, mult3, sub2, split, add, div4);
+computation(console.log, 5) // -> 14
+
+// same as:
+
+const computation2 = (input, callback) => {
+  const f6 = x=> div4(callback, x);
+  const f5 = (x, y) => add(f6, x, y);
+  const f4 = x => split(f5, x);
+  const f3 = x => sub2(f4, x);
+  const f2 = x => mult3(f3, x);
+  add5(f2, input);
+}
+ +

​​​​​​Różnica pomiędzy reduce i reduceRight

+ +
var a = ['1', '2', '3', '4', '5'];
+var left  = a.reduce(function(prev, cur)      { return prev + cur; });
+var right = a.reduceRight(function(prev, cur) { return prev + cur; });
+
+console.log(left);  // "12345"
+console.log(right); // "54321"
+ +

Przykład na rozwijanie funkcji

+ +

W rozwijaniu funkcji chodzi o to, że w wywołaniu jednej funkcji możemy użyć wielu funkcji. Odbywa się to od prawej do lewej, wołając każdą funkcję z wynikiem zwróconym przez poprzednią.

+ +
/**
+ * Function Composition is way in which result of one function can
+ * be passed to another and so on.
+ *
+ * h(x) = f(g(x))
+ *
+ * Function execution happens right to left
+ *
+ * https://en.wikipedia.org/wiki/Function_composition
+ */
+
+const compose = (...args) => (value) => args.reduceRight((acc, fn) => fn(acc), value)
+
+// Increment passed number
+const inc = (n) => n + 1
+
+// Doubles the passed value
+const double = (n) => n * 2
+
+// using composition function
+console.log(compose(double, inc)(2)); // 6
+
+// using composition function
+console.log(compose(inc, double)(2)); // 5
+
+ +

Polyfill

+ +

reduceRight zostało dodane dostandardu ECMA-262 w piątej edycji, w związku z czym może jeszcze nie być dodane do wszystkich implementacji standardu. Można to rozwiązać poprzez użycie poniższego kodu na początku aplikacji, pozwoli to na używanie reduceRight w środowiskach, które tego nie implementują.

+ +
// Production steps of ECMA-262, Edition 5, 15.4.4.22
+// Reference: http://es5.github.io/#x15.4.4.22
+if ('function' !== typeof Array.prototype.reduceRight) {
+  Array.prototype.reduceRight = function(callback /*, initialValue*/) {
+    'use strict';
+    if (null === this || 'undefined' === typeof this) {
+      throw new TypeError('Array.prototype.reduce called on null or undefined');
+    }
+    if ('function' !== typeof callback) {
+      throw new TypeError(callback + ' is not a function');
+    }
+    var t = Object(this), len = t.length >>> 0, k = len - 1, value;
+    if (arguments.length >= 2) {
+      value = arguments[1];
+    } else {
+      while (k >= 0 && !(k in t)) {
+        k--;
+      }
+      if (k < 0) {
+        throw new TypeError('Reduce of empty array with no initial value');
+      }
+      value = t[k--];
+    }
+    for (; k >= 0; k--) {
+      if (k in t) {
+        value = callback(value, t[k], k, t);
+      }
+    }
+    return value;
+  };
+}
+
+ +

Specyfikacje

+ + + + + + + + + + +
Specyfikacja
{{SpecName('ESDraft', '#sec-array.prototype.reduceright', 'Array.prototype.reduceRight')}}
+ +

Zgodność w przeglądarkach

+ +
+ + +

{{Compat("javascript.builtins.Array.reduceRight")}}

+
+ +

Sprawdź również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/reverse/index.html b/files/pl/web/javascript/reference/global_objects/array/reverse/index.html new file mode 100644 index 0000000000..bc6fd9082b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/reverse/index.html @@ -0,0 +1,55 @@ +--- +title: Array.prototype.reverse() +slug: Web/JavaScript/Referencje/Obiekty/Array/reverse +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/reverse +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Odwraca kolejność elementów w tablicy: pierwszy staje się ostatnim, ostatni pierwszym.

+ +

Składnia

+ +
arr.reverse()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Metoda reverse zmienia zawartość tablicy, odwracając kolejność jej elementów.

+ +

Przykłady

+ +

Przykład: Odwracanie kolejności elementów w tablicy

+ +

Poniższy przykład tworzy tablicę mojaTablica, posiadającą trzy elementy, następnie odwraca ich kolejność.

+ +
mojaTablica = new Array("jeden", "dwa", "trzy")
+mojaTablica.reverse()
+
+ +

W wyniku działania powyższego kodu:

+ + + +

Zobacz także

+ + + +
 
diff --git a/files/pl/web/javascript/reference/global_objects/array/shift/index.html b/files/pl/web/javascript/reference/global_objects/array/shift/index.html new file mode 100644 index 0000000000..adf8ca36e4 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/shift/index.html @@ -0,0 +1,48 @@ +--- +title: Array.prototype.shift() +slug: Web/JavaScript/Referencje/Obiekty/Array/shift +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/shift +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Usuwa pierwszy element z tablicy i zwraca go. Metoda ta zmienia długość tablicy.

+ +

Składnia

+ +
arr.shift()
+ +

Przykłady

+ +

Przykład: Usuwanie pierwszego elementu tablicy

+ +

Następujący kod wyświetli tablicę myFish, przed i po usunięciu jej pierwszego elementu. Wyświetli również usunięty element:

+ +
// przyjmując że funkcja print jest zdefiniowana
+var myFish = ["anioł", "klaun", "mandarynka", "chirurg"];
+console.log("myFish przed: " + myFish);
+var shifted = myFish.shift();
+console.log("myFish po: " + myFish);
+console.log("Usunięto element: " + shifted);
+
+ +

Przykład wyświetli następujący rezultat:

+ +
myFish przed: ["anioł", "klaun", "mandarynka", "chirurg"]
+myFish po: ["klaun", "mandarynka", "chirurg"]
+//Usunięto element: anioł
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/slice/index.html b/files/pl/web/javascript/reference/global_objects/array/slice/index.html new file mode 100644 index 0000000000..ced8efba96 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/slice/index.html @@ -0,0 +1,99 @@ +--- +title: Array.prototype.slice() +slug: Web/JavaScript/Referencje/Obiekty/Array/slice +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/slice +--- +

{{ JSRef }}

+ +

{{EmbedInteractiveExample("pages/js/array-slice.html")}}

+ +

Podsumowanie

+ +

Wydobywa fragment tablicy i zwraca go jako nową tablicę.

+ +

Składnia

+ +
arr.slice([begin[, end]])
+ +

Parametry

+ +
+
begin
+
Indeks (liczony od zera) od którego zaczyna się wydobywanie.
+
Jeżeli indeks jest ujemny, begin wskazuje przesunięcie w kolejności od końca. slice(-2) wydobywa kolejno drugi od końca i ostatni element tablicy.
+
+ +
+
end
+
Indeks (liczony od zera) przed którym kończy się wydobywanie. slice wydobywa elementy jednakże nie zawiera end.
+
+ +
+
slice(1,4) wydobywa elementy od drugiego do czwartego (o indeksach 1, 2 i 3).
+
+ +
+
Jeżeli parametr ten ma wartość ujemną to end określa odległość od końca tablicy. slice(2,-1) wydobywa kolejne elementy od trzeciego do przedostatniego.
+
+ +
+
Jeżeli end jest pominięty, slice wydobywa wszystkie elementy do końca tablicy.
+
+ +

Opis

+ +

slice nie zmienia zawartości oryginalnej tablicy, tylko zwraca nową kopię "o jednym poziomie głębokości" zawierającą elementy wyciągnięte z oryginalnej tablicy. Elementy oryginalnej tablicy są kopiowane do nowej tablicy następująco:

+ + + + + +

Jeżeli nowy element jest dodany do jednej z tablic, to nie wpływa to w żaden sposób na drugą.

+ +

Przykłady

+ +

Przykład: Zastosowanie slice

+ +

W następującym przykładzie slice tworzy nową tablicę newCar z myCar. Obydwie zawierają odniesienie do obiektu myHonda. Kiedy kolor myHonda jest zmieniany na purpurowy, to obie tablice odzwierciedlają zmianę.

+ +
//Użycie slice, tworzenie newCar z myCar.
+var myHonda = { color: "red", wheels: 4, engine: { cylinders: 4, size: 2.2 } };
+var myCar = [myHonda, 2, "cherry condition", "purchased 1997"];
+var newCar = myCar.slice(0, 2);
+
+//Wpisz wartości myCar, newCar i color myHonda
+//  referenced from both arrays.
+console.log("myCar = " + myCar.toSource());
+console.log("newCar = " + newCar.toSource());
+console.log("myCar[0].color = " + myCar[0].color);
+console.log("newCar[0].color = " + newCar[0].color);
+
+//zmienia kolor myHonda.
+myHonda.color = "purple";
+console.log("Nowy kolor mojej Honda to " + myHonda.color);
+
+//Wpisz color myHonda odnoszący się do oby tablic
+console.log("myCar[0].color = " + myCar[0].color);
+console.log("newCar[0].color = " + newCar[0].color);
+
+ +

Ten skrypt wypisze:

+ +
myCar = [{color:"red", wheels:4, engine:{cylinders:4, size:2.2}}, 2, "cherry condition", "purchased 1997"]
+newCar = [{color:"red", wheels:4, engine:{cylinders:4, size:2.2}}, 2]
+myCar[0].color = red
+newCar[0].color = red
+Nowym kolorem mojej Honda jest purpurowy
+myCar[0].color = purple
+newCar[0].color = purple
+
diff --git a/files/pl/web/javascript/reference/global_objects/array/some/index.html b/files/pl/web/javascript/reference/global_objects/array/some/index.html new file mode 100644 index 0000000000..6ba1777370 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/some/index.html @@ -0,0 +1,110 @@ +--- +title: Array.prototype.some() +slug: Web/JavaScript/Referencje/Obiekty/Array/some +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/some +--- +

{{ JSRef }}

+ +

Podsumowanie

+ +

Sprawdza, czy jakikolwiek element tablicy zalicza test zaimplementowany przez dostarczoną funkcję .

+ +

Składnia

+ +
arr.some(callback[, thisArg])
+ +

Parametry

+ +
+
callback 
+
Funkcja sprawdzająca dla każdego elementu.
+
thisArg
+
Obiekt do użycia jako this gdy wykonujemy funkcję callback.
+
+ +

Opis

+ +

some wykonuje funkcję callback) na każdym elemencie tablicy, aż znajdzie taki, dla którego callback zwróci prawdę (true). Jeżeli taki element zostanie znaleziony, some zakończy swoje działanie i zwróci prawdę (true), w przeciwnym przypadku (gdy callback zwróci fałsz dla każdego z elementów) some zwróci false. Tablice nie są traktowane jako "zwarte" - czyli callback zostanie wywołany dla każdego indeksu tablicy dla którego wartość została przypisana. Nie zostanie wywołany dla indeksów, które zostały usunięte, bądź dla których nigdy nie została przypisana wartość.

+ +

callback wywoływana jest z trzema argumentami: wartością elementu, jego indeksem i przemierzaną tablicą.

+ +

W przypadku podania argumentu thisObject, zostanie on przekazany jako this przy każdym wywołaniu callback. Gdy go brak, lub ma wartość null, użyty zostanie obiekt globalny przyporządkowany do callback.

+ +

some nie modyfikuje tablicy, na której jest wywołany.

+ +

Zakres elementów przetwarzanych przez some ustalany jest przed pierwszym wywołaniem callback. Elementy dodane do tablicy po wywołaniu some nie zostaną sprawdzone przez callback. Jeśli istniejący, niesprawdzony jeszcze element tablicy zostanie zmieniony lub usunięty przez callback, wartością przekazaną do callback będzie wartość z momentu, w którym some sprawdza dany element; elementy usunięte przed sprawdzeniem będą przekazane jako undefined.

+ +

Przykłady

+ +

Sprawdzanie rozmiaru wszystkich elementów tablicy

+ +

Następujący przykład sprawdza czy jakiś element tablicy jest większy, bądź równy 10.

+ +
function czyWiekszyNiz10(element, index, array) {
+  return element > 10;
+}
+[2, 5, 8, 1, 4].some(czyWiekszyNiz10); // false
+[12, 5, 8, 1, 44].some(czyWiekszyNiz10); // true
+
+ +

Sprawdzanie elementów używając funkcji strzałkowych

+ +

Funkcje strzałkowe dają krótszą składnię dla tego samego testu.

+ +
[2, 5, 8, 1, 4].some(x => x > 10); // false
+[12, 5, 8, 1, 44].some(x => x > 10); // true
+
+ +

Kompatybilność z przeglądarkami

+ +

{{CompatibilityTable}}

+ + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatGeckoDesktop("1.8")}}{{CompatIE("9")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+ + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile("1.8")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
diff --git a/files/pl/web/javascript/reference/global_objects/array/sort/index.html b/files/pl/web/javascript/reference/global_objects/array/sort/index.html new file mode 100644 index 0000000000..2b53d4e6d5 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/sort/index.html @@ -0,0 +1,122 @@ +--- +title: Array.prototype.sort() +slug: Web/JavaScript/Referencje/Obiekty/Array/sort +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Strony_wymagające_dopracowania + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/sort +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Sortuje elementy tablicy.

+ +

Składnia

+ +
arr.sort([compareFunction])
+ +

Parametry

+ +
+
compareFunction 
+
jest nazwą funkcji porównującej elementy. Jeżeli parametr zostanie pominięty, tablica będzie posortowana w porządku leksykograficznym (alfabetycznie).
+
+ +

Opis

+ +

Jeżeli compareFunction nie zostanie podana, elementy zostaną posortowane leksykograficznie (alfabetycznie - słownikowo) według porównania ich reprezentacji znakowej (łańcucha znaków). Przykładowo "80" znajdzie się przed "9" w porządku leksykograficznym, pomimo że numerycznie 9 poprzedza 80.

+ +

Jeżeli compareFunction zostanie podana, elementy tablicy zostaną posortowane odpowiednio do wartości zwracanej przez funkcję porównującą. Jeżeli a oraz b są dwoma porównywanymi elementami tablicy to:

+ + + + + + + +

Ogólna postać funkcji porównującej wygląda następująco:

+ +
function compare(a, b) {
+   if (a mniejsze niż b według kryteriów sortowania)
+      return -1
+   if (a większe od b według kryteriów sortowania)
+      return 1
+   // a równe b
+   return 0
+}
+
+ +

W celu porównania liczb, zamiast napisów, funkcja porównująca może odejmować b od a:

+ +
function compareNumbers(a, b) {
+   return a - b
+}
+
+ +

Niektóre implementacje JavaScript wykonują sortowanie stabilne: kolejność elementów a i b nie jest zmieniana jeśli a i b są sobie równe. Jeżeli przed sortowaniem a jest w tablicy wcześniej niż b oraz a i b są sobie równe, to po sortowaniu ich kolejność będzie taka sama (niezależnie od tego, jak zmienią się pozycje elementów a i b).

+ +

Przykłady

+ +

Przykład: Tworzenie, wyświetlanie i sortowanie tablic

+ +

Następujący przykład tworzy cztery tablice i wyświetla oryginalną tablicę, potem posortowane tablice. Tablice liczbowe są sortowane najpierw bez podania funkcji porównującej, następnie z taką funkcją.

+ +
stringArray = new Array("Blue","Humpback","Beluga")
+numericStringArray = new Array("80","9","700")
+numberArray = new Array(40,1,5,200)
+mixedNumericArray = new Array("80","9","700",40,1,5,200)
+
+function compareNumbers(a, b) {
+   return a - b
+}
+
+console.log("tablicaNapisów: " + stringArray.join())
+console.log("Posortowana: " + stringArray.sort())
+
+console.log("tablicaLiczbowa: " + numberArray.join())
+console.log("Posortowana bez funkcji porównującej: " + numberArray.sort())
+console.log("Posortowana z funkcją porównującą: " + numberArray.sort(compareNumbers))
+
+console.log("tablicaNapisówLiczbowych: " + numericStringArray.join())
+console.log("Posortowana bez funkcji porównującej: " + numericStringArray.sort())
+console.log("Posortowana z funkcją porównującą: " + numericStringArray.sort(compareNumbers))
+
+console.log("tablicaLiczbowaMieszna: " + mixedNumericArray.join())
+console.log("Posortowana bez funkcji porównującej: " + mixedNumericArray.sort())
+console.log("Posortowana z funkcją porównującą: " + mixedNumericArray.sort(compareNumbers))
+
+ +

Ten przykład wyświetla następujące dane. Jak widać, przy zastosowaniu funkcji porównującej, liczby są sortowane prawidłowo niezależnie od tego czy są przedstawiane jako wartości liczbowe bądź też napisy.

+ +
tablicaNapisów: Blue,Humpback,Beluga
+Posortowana: Beluga,Blue,Humpback
+
+tablicaLiczbowa: 40,1,5,200
+Posortowana bez funkcji porównującej: 1,200,40,5
+Posortowana z funkcją porównującą: 1,5,40,200
+
+tablicaNapisówLiczbowych: 80,9,700
+Posortowana bez funkcji porównującej: 700,80,9
+Posortowana z funkcją porównującą: 9,80,700
+
+tablicaLiczbowaMieszna: 80,9,700,40,1,5,200
+Posortowana bez funkcji porównującej: 1,200,40,5,700,80,9
+Posortowana z funkcją porównującą: 1,5,9,40,80,200,700
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/splice/index.html b/files/pl/web/javascript/reference/global_objects/array/splice/index.html new file mode 100644 index 0000000000..cc4d13def3 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/splice/index.html @@ -0,0 +1,86 @@ +--- +title: Array.prototype.splice() +slug: Web/JavaScript/Referencje/Obiekty/Array/splice +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/splice +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zmienia zawartość tablicy, dodając nowe elementy podczas usuwania starych elementów.

+ +

Składnia

+ +
array.splice(start, deleteCount[, item1[, item2[, ...]]])
+
+ +

Parametry

+ +
+
start
+
Indeks od którego rozpoczynamy modyfikację tablicy.
+
+ +
+
deleteCount
+
Liczba całkowita określająca liczbę starych elementów tablicy do usunięcia. Jeżeli deleteCount wynosi 0, nic nie zostanie usunięte. W tym przypadku należy podać co najmniej jeden nowy element. W przypadku gdy parametr deleteCount nie został podany (druga forma składni podana powyżej, która jest rozszerzeniem SpiderMonkey), wszystkie elementy o indeksach wyższych lub równych index są usuwane.
+
+ +
+
itemN
+
Elementy dodawane do tablicy. Jeżeli nie określimy żadnych elementów, splice usunie tylko podaną liczbę elementów.
+
+ +

Opis

+ +

Jeżeli podamy różną liczbę wstawianych elementów od liczby usuwanych elementów, tablica będzie posiadała inną długość po wywołaniu metody splice.

+ +

Metoda splice zwraca tablicę zawierającą usunięte elementy. Jeżeli usunięty został tylko jeden element, zwracana jest tablica jednoelementowa.

+ +

Przykłady

+ +

Przykład: Zastosowanie splice

+ +

Następujący skrypt ilustruje użycie splice:

+ +
myFish = ["anioł", "klaun", "mandarynka", "jesiotr"];
+console.log("myFish: " + myFish);
+
+removed = myFish.splice(2, 0, "bęben");
+console.log("Po dodaniu 1: " + myFish);
+console.log("Usunięty jest: " + removed);
+
+removed = myFish.splice(3, 1)
+console.log("Po usunięciu 1: " + myFish);
+console.log("Usunięty jest: " + removed);
+
+removed = myFish.splice(2, 1, "trąba")
+console.log("Po zastąpieniu 1: " + myFish);
+console.log("Usunięty jest: " + removed);
+
+removed = myFish.splice(0, 2, "papuga", "zawilec", "niebieski")
+console.log("Po zastąpieniu 2: " + myFish);
+console.log("Usunięty jest: " + removed);
+
+ +

Ten skrypt wyświetli:

+ +
myFish: ["anioł", "klaun", "mandarynka", "jesiotr"]
+
+Po dodaniu 1: ["anioł", "klaun", "bęben", "mandarynka", "jesiotr"]
+Usunięty jest: undefined
+
+Po usunięciu 1: ["anioł", "klaun", "bęben, "jesiotr"]
+Usunięty jest: mandarynka
+
+Po zastąpieniu 1: ["anioł", "klaun", "trąba", "jesiotr"]
+Usunięty jest: bęben
+
+Po zastąpieniu 2: ["papuga", "zawilec", "niebieski", "trąba", "jesiotr"]
+Usunięty jest: ["anioł", "klaun"]
+
diff --git a/files/pl/web/javascript/reference/global_objects/array/tolocalestring/index.html b/files/pl/web/javascript/reference/global_objects/array/tolocalestring/index.html new file mode 100644 index 0000000000..1dc476c413 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/tolocalestring/index.html @@ -0,0 +1,128 @@ +--- +title: Array.prototype.toLocaleString() +slug: Web/JavaScript/Referencje/Obiekty/Array/toLocaleString +translation_of: Web/JavaScript/Reference/Global_Objects/Array/toLocaleString +--- +
{{JSRef}}
+ +
Metoda toLocaleString() zwraca łańcuch znaków reprezentujący wszystkie elementy w tablicy. Każdy element jest konwerterowany do  łańcucha znaku za pomocą lokalnych wywołań toLocaleString. Elementy łaczone są separatorem zdefiniowanym dla lokalnego języka (np. przecinek).
+ +
+ +

Składnia

+ +
arr.toLocaleString();
+ +

Opis

+ +

Poniższe elementy tablic są konwertowane na łańcuchy znaków za pomocą wbudowanych metod toLocaleString

+ + + +

Przykład

+ +

Użycie toLocaleString

+ +
let numer = 1337;
+let data = new Date();
+let tablica = [numer , data, 'foo'];
+
+let str = tablica.toLocaleString();
+
+console.log(str);
+// logs '1337,19.11.2020, 17:21:06,foo'
+// if run in a Polish (pl-PL) locale with timezone Europe/Warsaw
+
+
+let strEn = tablica.toLocaleString("en-US");  // "1,337,11/19/2020, 5:21:06 PM,foo"
+ + + +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarze
{{SpecName('ES3')}}{{Spec2('ES3')}}Inicjalna definicja
{{SpecName('ES5.1', '#sec-15.2.4.3', 'Array.prototype.toLocaleString')}}{{Spec2('ES5.1')}}
{{SpecName('ES6', '#sec-array.prototype.tolocalestring', 'Array.prototype.toLocaleString')}}{{Spec2('ES6')}}
+ +

Zgodność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/tosource/index.html b/files/pl/web/javascript/reference/global_objects/array/tosource/index.html new file mode 100644 index 0000000000..675e8431a2 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/tosource/index.html @@ -0,0 +1,62 @@ +--- +title: Array.prototype.toSource() +slug: Web/JavaScript/Referencje/Obiekty/Array/toSource +tags: + - Array + - JavaScript + - Method + - Non-standard + - Prototype + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/toSource +--- +
{{JSRef}} {{non-standard_header}}
+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący kod źródłowy tablicy.

+ +

Składnia

+ +
arr.toSource()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Metoda toSource zwraca następujące wartości:

+ +

This shouldn't be here, but until reorganization where pages are moved to their proper places, the title of this article is ambiguous, so it can stay. After reorganization, this should be removed.

+ + + +

Metoda ta jest zazwyczaj wywoływana wewnętrznie przez JavaScript, a nie bezpośrednio w kodzie. Możliwe jest wywołanie toSource podczas debugowania, aby zbadać zawartość tablicy.

+ +

Przykłady

+ +

Przykład: Sprawdzanie kodu źródłowego tablicy

+ +

Do sprawdzania kodu źródłowego tablicy:

+ +
var alpha = new Array("a", "b", "c");
+
+alpha.toSource() //zwraca ["a", "b", "c"]
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/tostring/index.html b/files/pl/web/javascript/reference/global_objects/array/tostring/index.html new file mode 100644 index 0000000000..e4801cbdc4 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/tostring/index.html @@ -0,0 +1,42 @@ +--- +title: Array.prototype.toString() +slug: Web/JavaScript/Referencje/Obiekty/Array/toString +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/toString +--- +
{{JSRef}}
+ +

Metoda toString() zwraca łańcuch znaków reprezentujący daną tablicę wraz z jej elementami.

+ +
var months = ['Styczeń', 'Luty', 'Marzec', 'Kwiecień'];
+months.toString(); // "Styczeń,Luty,Marzec,Kwiecień"
+
+ +

Składnia

+ +
arr.toString()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Obiekt {{jsxref("Array")}} przesłania metodę toString obiektu {{jsxref("Object")}}. Dla obiektów Array, metoda toString łączy tablicę i zwraca jeden łańcuch znaków zawierający wszystkie elementy tablicy oddzielone przecinkami. Przykładowo poniższy kod tworzy tablicę i stosuje metodę toString, aby przekształcić tablicę do łańcucha znaków.

+ +
var monthNames = new Array("Jan","Feb","Mar","Apr")
+var myVar = monthNames.toString() // przypisuje "Jan,Feb,Mar,Apr" do zmiennej myVar
+
+ +

JavaScript wywołuje metodę toString automatycznie, gdy tablica jest traktowana jako wartość tekstowa lub kiedy istnieje odniesienie do tej tablicy wewnątrz połączonego łańcucha znaków.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/unshift/index.html b/files/pl/web/javascript/reference/global_objects/array/unshift/index.html new file mode 100644 index 0000000000..56346f6552 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/unshift/index.html @@ -0,0 +1,56 @@ +--- +title: Array.prototype.unshift() +slug: Web/JavaScript/Referencje/Obiekty/Array/unshift +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Array/unshift +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Dodaje jeden lub więcej elementów na początek tablicy i zwraca jej nową długość.

+ +

Składnia

+ +
arr.unshift([element1[, ...[, elementN]]])
+ +

Parametry

+ +
+
element + N +  
+
Elementy do dodania na początek tablicy.
+
+ +

Przykłady

+ +

Przykład: Dodawanie elementów do tablicy

+ +

Następujący kod wyświetli tablicę myFish przed i po dodaniu do niej elementów.

+ +
myFish = ["anioł", "klaun"];
+console.log("myFish przed: " + myFish);
+unshifted = myFish.unshift("bęben", "lew");
+console.log("myFish po: " + myFish);
+console.log("Nowa długość tablicy: " + unshifted);
+
+ +

Powyższy przykład wyświetli:

+ +
myFish przed: ["anioł", "klaun"]
+myFish po: ["bęben", "lew", "anioł", "klaun"]
+Nowa długość tablicy: 4
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/array/values/index.html b/files/pl/web/javascript/reference/global_objects/array/values/index.html new file mode 100644 index 0000000000..b079877dd9 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/array/values/index.html @@ -0,0 +1,84 @@ +--- +title: Array.prototype.values() +slug: Web/JavaScript/Referencje/Obiekty/Array/values +tags: + - ECMAScript 2015 + - Iterator + - JavaScript + - Metodă + - Prototype + - Tablica +translation_of: Web/JavaScript/Reference/Global_Objects/Array/values +--- +
{{JSRef}}
+ +

Metoda values() zwraca nowy obiekt Array Iterator , który zawiera wartości dla każdego indeksu w tablicy.

+ +
var a = ['w', 'y', 'k', 'o', 'p'];
+var iterator = a.values();
+
+console.log(iterator.next().value); // w
+console.log(iterator.next().value); // y
+console.log(iterator.next().value); // k
+console.log(iterator.next().value); // o
+console.log(iterator.next().value); // p
+ +

Składnia

+ +
arr.values()
+ +

Zwracana wartość

+ +

Nowy obiekt {{jsxref("Array")}} iterator.

+ +

Przykłady

+ +

Iteracja używająca pętli for...of

+ +
var arr = ['w', 'y', 'k', 'o', 'p'];
+var iterator = arr.values();
+
+for (let letter of iterator) {
+  console.log(letter);
+}
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-array.prototype.values', 'Array.prototype.values')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ESDraft', '#sec-array.prototype.values', 'Array.prototype.values')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność przeglądarek

+ +
+ + +

{{Compat("javascript.builtins.Array.values")}}

+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/arraybuffer/index.html b/files/pl/web/javascript/reference/global_objects/arraybuffer/index.html new file mode 100644 index 0000000000..f01e0fa67c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/arraybuffer/index.html @@ -0,0 +1,222 @@ +--- +title: ArrayBuffer +slug: Web/JavaScript/Referencje/Obiekty/ArrayBuffer +tags: + - ArrayBuffer + - JavaScript + - Konstruktor + - TypedArrays +translation_of: Web/JavaScript/Reference/Global_Objects/ArrayBuffer +--- +
{{JSRef}}
+ +

Objekt ArrayBuffer reprezentuje buffer z surowymi danymi binarnymi o niezmiennej długości. Nie możesz bezpośrednio wpływać na zawartość obiektu ArrayBuffer, możesz natomiast stworzyć jeden z obiektów typedArray lub obiekt {{jsxref("DataView")}} reprezentujący buffer w specjalnym formacie i używać tego obiektu do odczytu oraz zapisu treści buffera.

+ +

Składnia

+ +
new ArrayBuffer(length)
+
+ +

Parametry

+ +
+
długość(length)
+
Rozmiar, w bajtach, tworzony z bufferu tablicy (array buffer).
+
+ +

Wartość zwrócona

+ +

Nowy obiekt ArrayBuffer o określonym rozmiarze. Jego wartości początkowe wynoszą 0.

+ +

Wyjątki

+ +

{{jsxref("RangeError")}} pojawi się, jeśli długość (length) jest większa niż {{jsxref("Number.MAX_SAFE_INTEGER")}} (>= 2 ** 53) lub ujemna.

+ +

Opis

+ +

Konstruktor ArrayBuffer tworzy nowy ArrayBuffer z podanej długości (length) w bajtach.

+ +

Otrzymywanie bufferu tablicy z istniejących danych

+ + + +

Właściwości

+ +
+
ArrayBuffer.length
+
Właściwość długości konstruktura ArrayBuffer, której wartość wynosi 1.
+
{{jsxref("ArrayBuffer.@@species", "get ArrayBuffer[@@species]")}}
+
Funkcja konstruktora jest używana do tworzenia dostarczanych obiektów.
+
{{jsxref("ArrayBuffer.prototype")}}
+
Pozwala dodać właściwości do wszystkich obiektów ArrayBuffer.
+
+ +

Metody

+ +
+
{{jsxref("ArrayBuffer.isView", "ArrayBuffer.isView(arg)")}}
+
Zwraca true, jeśli arg jest jednym z widoków ArrayBuffer, jak obiekty typedArray lub {{jsxref("DataView")}}. W innych przypadkach zwraca false.
+
{{jsxref("ArrayBuffer.transfer", "ArrayBuffer.transfer(oldBuffer [, newByteLength])")}} {{experimental_inline}}
+
+
Zwraca nowy ArrayBuffer, którego zawartości są pobrane z danych oldBuffer. Następnie zostaje skrócony lub przedłużony od 0 przez newByteLength.
+
+
+ +

Instancje ArrayBuffer

+ +

Wszystkie instancje ArrayBuffer dziedziczą z {{jsxref("ArrayBuffer.prototype")}}.

+ +

Właściwości

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/prototype','Properties')}}

+ +

Metody

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/prototype','Methods')}}

+ +
+
{{jsxref("ArrayBuffer.slice()")}} {{non-standard_inline}}
+
Posiada tę samą funkcjonalność, jak {{jsxref("ArrayBuffer.prototype.slice()")}}.
+
+ +

Przykłady

+ +

W niniejszym przykładzie tworzymy 8-bajtowy buffer z widokiem {{jsxref("Global_Objects/Int32Array", "Int32Array")}} odnoszącym się do buffera:

+ +
var buffer = new ArrayBuffer(8);
+var view   = new Int32Array(buffer);
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('Typed Array')}}{{Spec2('Typed Array')}}Zastępiony przez ECMAScript 6.
{{SpecName('ES6', '#sec-arraybuffer-constructor', 'ArrayBuffer')}}{{Spec2('ES6')}}Definicja początkowa w standardzie ECMA. Zgłasza, że wymagany jest new.
{{SpecName('ESDraft', '#sec-arraybuffer-constructor', 'ArrayBuffer')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CechaChromeFirefox (Gecko)Internet ExplorerOperaSafari
Wsparcie podstawowe7.0{{CompatGeckoDesktop("2")}}1011.65.1
ArrayBuffer() bez odsyłacza new{{CompatUnknown}}{{CompatGeckoDesktop("44")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
ArrayBuffer.slice() {{non-standard_inline}}{{CompatNo}}{{CompatVersionUnknown}}
+ {{CompatNo}} {{CompatGeckoDesktop("53")}}
{{CompatNo}}{{CompatNo}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CechaAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Wsparcie podstawowe4.0{{CompatVersionUnknown}}{{CompatGeckoMobile("2")}}1011.64.2
ArrayBuffer() bez odsyłacza new{{CompatUnknown}}{{CompatUnknown}}{{CompatGeckoMobile("44")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
ArrayBuffer.slice() {{non-standard_inline}}{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}}
+ {{CompatNo}} {{CompatGeckoMobile("53")}}
{{CompatNo}}{{CompatNo}}{{CompatUnknown}}
+
+ +

Zapis kompatybilny

+ +

Od ECMAScript 2015 kontruktory ArrayBuffer muszą być tworzone poprzez operator {{jsxref("Operators/new", "new")}}. Wywoływanie kontruktora ArrayBuffer jako funkcji bez new zaskutkuje od teraz pojawieniem się {{jsxref("TypeError")}}.

+ +
var dv = ArrayBuffer(10);
+// TypeError: calling a builtin ArrayBuffer constructor
+// without new is forbidden
+ +
var dv = new ArrayBuffer(10);
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/bigint/asintn/index.html b/files/pl/web/javascript/reference/global_objects/bigint/asintn/index.html new file mode 100644 index 0000000000..f3d7de5b66 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/bigint/asintn/index.html @@ -0,0 +1,79 @@ +--- +title: BigInt.asIntN() +slug: Web/JavaScript/Referencje/Obiekty/BigInt/asIntN +tags: + - BigInt + - JavaScript + - Metodă + - Referencja + - asIntN +translation_of: Web/JavaScript/Reference/Global_Objects/BigInt/asIntN +--- +
{{JSRef}}
+ +

Metoda statyczna BigInt.asIntN jest używana do opakowywania wartości BigInt w wartości całkowite ze znakiem w zakresie od -2szerokość-1 do 2szerokość-1-1.

+ +
{{EmbedInteractiveExample("pages/js/bigint-asintn.html", "taller")}}
+ + + +

Składnia

+ +
BigInt.asIntN(szerokość, bigint);
+ +

Parametry

+ +
+
szerokość
+
Liczba bitów dostępnych dla rozmiaru wartości całkowitej (integer).
+
bigint
+
Wartość całkowita, którą chcemy wpasować w daną liczbę bitów.
+
+ +

Wynik

+ +

Wartość bigint modulo 2szerokość jako liczba całkowita ze znakiem.

+ +

Przykłady

+ +

Pozostawanie w zakresie arytmetyki 64-bitowej

+ +

Metoda BigInt.asIntN() może być użyteczna do tego, by pozostać w zakresie obliczeń arytmetyki 64-bitowej.

+ +
const max = 2n ** (64n - 1n) - 1n;
+
+BigInt.asIntN(64, max);
+// ↪ 9223372036854775807n
+
+BigInt.asIntN(64, max + 1n);
+// ↪ -9223372036854775807n
+// wartość ujemna ze względu na przepełnienie
+
+ +

Specyfikacje

+ + + + + + + + + + + + +
Specyfikacja
{{SpecName('ESDraft', '#sec-bigint.asintn', 'BigInt.asIntN()')}}
+ +

Wsparcie przeglądarek

+ + + +

{{Compat("javascript.builtins.BigInt.asIntN")}}

+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/bigint/asuintn/index.html b/files/pl/web/javascript/reference/global_objects/bigint/asuintn/index.html new file mode 100644 index 0000000000..0f290f50c4 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/bigint/asuintn/index.html @@ -0,0 +1,78 @@ +--- +title: BigInt.asUintN() +slug: Web/JavaScript/Referencje/Obiekty/BigInt/asUintN +tags: + - BigInt + - JavaScript + - Metodă + - Referencja + - asUintN +translation_of: Web/JavaScript/Reference/Global_Objects/BigInt/asUintN +--- +
{{JSRef}}
+ +

Metoda statyczna BigInt.asUintN jest używana do opakowywania wartości BigInt w wartości całkowite bez znaku w zakresie od 0 do 2szerokość-1.

+ +
{{EmbedInteractiveExample("pages/js/bigint-asuintn.html", "taller")}}
+ + + +

Składnia

+ +
BigInt.asUintN(szerokość, bigint);
+ +

Parametry

+ +
+
szerokość
+
Liczba bitów dostępnych dla rozmiaru wartości całkowitej (integer).
+
bigint
+
Wartość całkowita, którą chcemy wpasować w daną liczbę bitów.
+
+ +

Wynik

+ +

Wartość bigint modulo 2szerokość jako wartość całkowita bez znaku.

+ +

Przykłady

+ +

Pozostawanie w zakresie arytmetyki 64-bitowej

+ +

Metoda BigInt.asUintN() może być użyteczna do tego, by pozostać w zakresie obliczeń arytmetyki 64-bitowej.

+ +
const max = 2n ** 64n - 1n;
+
+BigInt.asUintN(64, max);
+// ↪ 18446744073709551615n
+
+BigInt.asUintN(64, max + 1n);
+// ↪ 0n
+// zero z powodu przepełnienia
+ +

Specyfikacje

+ + + + + + + + + + + + +
Specyfikacja
{{SpecName('ESDraft', '#sec-bigint.asuintn', 'BigInt.asUintN()')}}
+ +

Wsparcie przeglądarek

+ + + +

{{Compat("javascript.builtins.BigInt.asUintN")}}

+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/bigint/index.html b/files/pl/web/javascript/reference/global_objects/bigint/index.html new file mode 100644 index 0000000000..650604b0c3 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/bigint/index.html @@ -0,0 +1,293 @@ +--- +title: BigInt +slug: Web/JavaScript/Referencje/Obiekty/BigInt +tags: + - BigInt + - JavaScript + - Referencja +translation_of: Web/JavaScript/Reference/Global_Objects/BigInt +--- +
{{JSRef}}
+ +

BigInt jest wbudowanym obiektem umożliwiającym reprezentowanie całych liczb większch niż 253 - 1, ile wynosi największa liczba, którą JavaScript może faktycznie reprezentować przez prymityw {{JSxRef("Number")}}, co jest też reprezentowane przez stałą {{JSxRef("Number.MAX_SAFE_INTEGER")}}. BigInt może być używany do dowolnie dużych liczb całkowitych.

+ +
+
+ +

Opis

+ +

BigInt jest tworzony przez dodanie n na końcu literału liczby — 10n — lub przez wywołanie funkcji BigInt().

+ +
const najwiekszyInt = 9007199254740991n
+
+const tezDuzaLiczba = BigInt(9007199254740991)
+// ↪ 9007199254740991n
+
+const duzyString = BigInt("9007199254740991")
+// ↪ 9007199254740991n
+
+const duzyHex = BigInt("0x1fffffffffffff")
+// ↪ 9007199254740991n
+
+const duzyBin = BigInt("0b11111111111111111111111111111111111111111111111111111")
+// ↪ 9007199254740991n
+
+ +

BigInt jest w pewnym sensie podobny do {{JSxRef("Number")}} ale też różni się od niego w kilku kluczowych sprawach — nie może być używany z metodami wbudowanego obiektu {{JSxRef("Math")}}, a także nie może być mieszany z instancjami Number w żadnych operacjach; konieczne jest wymuszenie tego samego typu operandów. Należy uważać z wymuszaniem typów w jedną i drugą stronę, w szczególności precyzja BigInt może być utracona przy wymuszonej konwersji do typu Number.

+ +

Informacje o typie

+ +

Przy sprawdzeniu za pomocą typeof, BigInt zwróci "bigint":

+ +
typeof 1n === 'bigint'           // true
+typeof BigInt('1') === 'bigint'  // true
+
+ +

Obudowany w Object, BigInt będzie rozważany jako zwykły "obiekt":

+ +
typeof Object(1n) === 'object'  // true
+
+ +

Operatory

+ +

Z BigIntami (lub BigIntami obudowanymi w obiekty) mogą być używane następujące operatory: : +, *, -, **, %.

+ +

Operatory bitowe także są wspierane, z wyjątkiem >>> (przesunięcie w prawo z dopełnieniem zerami), gdyż wszystkie BigInty mają znak.

+ +

Niewspierany jest także operator jednoargumentowy (+), aby nie złamać zasad asm.js.

+ +
const previousMaxSafe = BigInt(Number.MAX_SAFE_INTEGER)
+// ↪ 9007199254740991n
+
+const maxPlusOne = previousMaxSafe + 1n
+// ↪ 9007199254740992n
+
+const theFuture = previousMaxSafe + 2n
+// ↪ 9007199254740993n, this works now!
+
+const multi = previousMaxSafe * 2n
+// ↪ 18014398509481982n
+
+const subtr = multi – 10n
+// ↪ 18014398509481972n
+
+const mod = multi % 10n
+// ↪ 2n
+
+const bigN = 2n ** 54n
+// ↪ 18014398509481984n
+
+bigN * -1n
+// ↪ –18014398509481984n
+
+ +

Operator / także działa zgodnie z założeniami z całymi liczbami.

+ +

Jako że są to BigInty, a nie BigDecimal, operacja dzielenia będzie zaokroąglała wynik do 0 (zatem można prościej powiedzieć, że nie zwraca ułamkowej części wyniku).

+ +
+

Ułamkowy wynik operacji będzie przycięty, kiedy używany jest  BigInt.

+
+ +
const expected = 4n / 2n
+// ↪ 2n
+
+const rounded = 5n / 2n
+// ↪ 2n, not 2.5n
+
+
+ +

Porównania

+ +

BigInt nie jest ściśle równy {{JSxRef("Number")}}, ale jest równy w luźnym sensie, zatem:

+ +
0n === 0
+// ↪ false
+
+0n == 0
+// ↪ true
+ +

{{JSxRef("Global_Objects/Number", "Number")}} i BigInt mogą być porównywane w zwyczajny sposób:

+ +
1n < 2
+// ↪ true
+
+2n > 1
+// ↪ true
+
+2 > 2
+// ↪ false
+
+2n > 2
+// ↪ false
+
+2n >= 2
+// ↪ true
+ +

Mogą być też mieszane w tablicach i sortowane:

+ +
const mixed = [4n, 6, -12n, 10, 4, 0, 0n]
+// ↪  [4n, 6, -12n, 10, 4, 0, 0n]
+
+mixed.sort()
+// ↪ [-12n, 0, 0n, 4n, 4, 6, 10]
+
+ +

Zauważ, że porównania z BigIntami opakowanymi w obiekty działają jak z innymi obiektami, wskazując równość tylko wtedy, kiedy ta sama instancja obiektu znajduje się po obu stronach porównania:

+ +
0n === Object(0n)          // false
+Object(0n) === Object(0n)  // false
+
+const o = Object(0n)
+o === o                    // true
+
+ +

Instrukcje warunkowe

+ +

BigInt zachowuje się jak {{JSxRef("Global_Objects/Number", "Number")}} w przypadkach, gdy:

+ + + +
if (0n) {
+  console.log('Hello from the if!')
+} else {
+  console.log('Hello from the else!')
+}
+
+// ↪ "Hello from the else!"
+
+0n || 12n
+// ↪ 12n
+
+0n && 12n
+// ↪ 0n
+
+Boolean(0n)
+// ↪ false
+
+Boolean(12n)
+// ↪ true
+
+!12n
+// ↪ false
+
+!0n
+// ↪ true
+
+ +

Konstruktor

+ +
+
BigInt()
+
Tworzy obiekty {{jsxref("BigInt")}}.
+
+ +

Metody statyczne

+ +
+
{{JSxRef("BigInt.asIntN()")}}
+
Opakowuje wartość BigInt w liczbę całkowitą ze znakiem o wartości między -2width-1 a 2width-1 - 1.
+
{{JSxRef("BigInt.asUintN()")}}
+
Opakowuje wartość BigInt w liczbę całkowitą bez znaku o wartości między 0 a 2width - 1.
+
+ +

Metody instancyjne

+ +
+
{{JSxRef("BigInt.prototype.toLocaleString()")}}
+
Zwraca string z zależną od języka reprezentacją danej liczby. Nadpisuje metodę {{JSxRef("Object.prototype.toLocaleString()")}}.
+
{{JSxRef("BigInt.prototype.toString()")}}
+
Zwraca string reprezentujący dany obiekt w określonym źródle. Nadpisuje metodę {{JSxRef("Object.prototype.toString()")}}.
+
{{JSxRef("BigInt.prototype.valueOf()")}}
+
Zwraca prymitywną wartość danego obiektu. Nadpisuje metodę {{JSxRef("Object.prototype.valueOf()")}}.
+
+ +

Zalecenia w użyciu

+ +

Wymuszanie typów

+ +

Ponieważ wymuszanie tupów między {{JSxRef("Number")}} a BigInt może prowadzić do utraty precyzji, zaleca się używanie jedynie typu BigInt, gdy można się spodziewać, że pojawią się wartości przekraczające 253 i nie należy wówczas przeprowadzać konwersji między tymi typami.

+ +

Kryptografia

+ +

Operacje wspierane dla BigIntów nie są stałe czasowo, dlatego też typ BigInt nie nadaje się do użycia w kryptografii.

+ +

Użycie w JSON

+ +

Użycie {{jsxref("JSON.stringify()")}} z dowolną wartością typu BigInt spowoduje błąd TypeError, ponieważ wartości BigInt nie są domyślnie serialozowane w JSONie. Jednakże, jeśli taka operacja jest potrzebna, możesz zaimplemntować własną metodę toJSON:

+ +
BigInt.prototype.toJSON = function() { return this.toString()  }
+ +

Zamiast wyrzucania wyjątku, JSON.stringify będzie teraz zwracać string:

+ +
JSON.stringify(BigInt(1))
+// '"1"'
+ +

Przykłady

+ +

Obliczanie liczb pierwszych

+ +
// Zwraca true jeśl dany BigInt jest liczbą pierwszą
+function isPrime(p) {
+  for (let i = 2n; i * i <= p; i++) {
+    if (p % i === 0n) return false;
+  }
+  return true
+}
+
+// Przyjmuje BigInt n jako argument, zwraca n-tą liczbę pierwszą jako BigInt
+function nthPrime(nth) {
+  let maybePrime = 2n
+  let prime = 0n
+
+  while (nth >= 0n) {
+    if (isPrime(maybePrime)) {
+      nth--
+      prime = maybePrime
+    }
+    maybePrime++
+  }
+
+  return prime
+}
+
+nthPrime(20n)
+// ↪ 73n
+ +

Specyfikacje

+ + + + + + + + + + + + +
Specyfikacja
{{SpecName("ESDraft", "#sec-bigint-objects", "BigInt objects")}}
+ +

Wsparcie przeglądarek

+ + + +

{{Compat("javascript.builtins.BigInt")}}

+ +

Postęp implementacji

+ +

Poniższa tabela przedstawia postęp implementacji tej funkcji języka JavaScript, gdyż nie osiągnęła ona jeszcze pełnej stabilności między przeglądarkami. Dane są generowane przez uruchamianie odpowiednich testów tej funkcji w Test262,standrardowym zestawie testów JavaScript, „nocnych wersji” (ang. nightly build) lub ostatnich wydań silnika JavaScript w każdej przeglądarce.

+ +
{{EmbedTest262ReportResultsTable("BigInt")}}
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/bigint/tostring/index.html b/files/pl/web/javascript/reference/global_objects/bigint/tostring/index.html new file mode 100644 index 0000000000..9cc06f15ea --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/bigint/tostring/index.html @@ -0,0 +1,95 @@ +--- +title: BigInt.prototype.toString() +slug: Web/JavaScript/Referencje/Obiekty/BigInt/toString +tags: + - BigInt + - JavaScript + - Metodă + - Prototyp + - toString() +translation_of: Web/JavaScript/Reference/Global_Objects/BigInt/toString +--- +
{{JSRef}}
+ +

Metoda toString() zwraca ciąg znaków (string), reprezentujący dany obiekt {{jsxref("BigInt")}}. Końcowy znak "n" nie jest częścią wynikowego ciągu znaków.

+ +
{{EmbedInteractiveExample("pages/js/bigint-tostring.html")}}
+ + + +

Składnia

+ +
bigIntObj.toString([podstawa])
+ +

Parametry

+ +
+
podstawa{{optional_inline}}
+
Argument opcjonalny. Liczba całkowita w zakresie od 2 do 36, reprezentująca bazę systemu liczbowego, w którym ma być przedstawiona dana wartość {{jsxref("BigInt")}}.
+
+ +

Zwracana wartość

+ +

Ciąg znaków reprezentujący dany obiekt {{jsxref("BigInt")}}.

+ +

Wyjątki

+ +
+
{{jsxref("RangeError")}}
+
Jeśli do metody toString() przekazana jest podstawa systemu mniejsza niż 2 lub większa niż 36, wyrzucany jest błąd {{jsxref("RangeError")}}.
+
+ +

Opis

+ +

Obiekt {{jsxref("BigInt")}} nadpisuje metodę toString() obiektu {{jsxref("Object")}}; nie dziedziczy metody {{jsxref("Object.prototype.toString()")}}. Dla obiektów {{jsxref( "BigInt")}}, metoda toString() zwraca ciąg znaków reprezentujący daną wartość w systemie pozycyjnym o zadanej bazie.

+ +

Metoda toString() parsuje pierwszy argument i próbuje zwrócić ciąg znaków reprezentujący daną wartość w systemie o zadanej podstawie (bazie). Dla systemów o podstawie większej niż 10, do reprezentacji cyfr większych niż 9 używane są kolejne litery alfabetu łacińskiego. Przykładowo, dla wartości w systemie szesnastkowym (o podstawie równej 16), używane są litery od a do f.

+ +

Jeśli podstawa nie jest podana, zakłada się, że preferowaną bazą systemu jest 10.

+ +

Jeśli wartość bigIntObj jest ujemna, znak jest zachowywany. Dzieje się tak nawet wtedy, gdy podstawą jest 2; zwracany ciąg cyfr jest dodatnią reprezentacją bigIntObj, poprzedzoną znakiem -, nie dopełnieniem dwójkowym bigIntObj.

+ +

Przykłady

+ +

Użycie toString

+ +
17n.toString();      // '17'
+66n.toString(2);     // '1000010'
+254n.toString(16);   // 'fe'
+-10n.toString(2);    // -1010'
+-0xffn.toString(2);  // '-11111111'
+
+ +

BigInt z ujemnym zerem

+ +

Nie ma obiektów BigInt reprezentujących ujemne zero, tak jak nie ma ujemnych zer wśród liczb całkowitych.. -0.0 jest zmiennoprzecinkową koncepcją zmiennoprzecinkową IEEE, która pojawia się w języku JavaScript jedynie w typie {{jsxref("Number")}}.

+ +
(-0n).toString();      // '0'
+BigInt(-0).toString(); // '0'
+ +

Specyfikacje

+ + + + + + + + + + +
Specyfikacja
{{SpecName('ESDraft', '#sec-bigint.prototype.tostring', 'BigInt.prototype.toString()')}}
+ +

Wsparcie przeglądarek

+ + + +

{{Compat("javascript.builtins.BigInt.toString")}}

+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/bigint/valueof/index.html b/files/pl/web/javascript/reference/global_objects/bigint/valueof/index.html new file mode 100644 index 0000000000..a1d4c312fd --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/bigint/valueof/index.html @@ -0,0 +1,59 @@ +--- +title: BigInt.prototype.valueOf() +slug: Web/JavaScript/Referencje/Obiekty/BigInt/valueOf +tags: + - BigInt + - JavaScript + - Metodă + - Prototype + - valueOf() +translation_of: Web/JavaScript/Reference/Global_Objects/BigInt/valueOf +--- +
{{JSRef}}
+ +

Metoda valueOf() zwraca opakowaną wartość prymitywną obiektu {{jsxref("BigInt")}}.

+ +
{{EmbedInteractiveExample("pages/js/bigint-valueof.html","shorter")}}
+ + + +

Składnia

+ +
bigIntObj.valueOf()
+ +

Zwracana wartość

+ +

BigInt reprezentujący wartość prymitywną danego obiektu {{jsxref("BigInt")}}.

+ +

Przykłady

+ +

Użycie valueOf

+ +
typeof Object(1n); // object
+typeof Object(1n).valueOf(); // bigint
+
+ +

Specyfikacje

+ + + + + + + + + + +
Specyfikacja
{{SpecName('ESDraft', '#sec-bigint.prototype.valueof', 'BigInt.prototype.valueOf()')}}
+ +

Wsparcie przeglądarek

+ + + +

{{Compat("javascript.builtins.BigInt.valueOf")}}

+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/boolean/index.html b/files/pl/web/javascript/reference/global_objects/boolean/index.html new file mode 100644 index 0000000000..85e5a6a773 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/boolean/index.html @@ -0,0 +1,111 @@ +--- +title: Boolean +slug: Web/JavaScript/Referencje/Obiekty/Boolean +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Boolean +--- +

{{JSRef("Global_Objects", "Boolean")}}

+ +

Podsumowanie

+ +

Obiekt Boolean jest obiektem opakowującym (ang.wrapper ) dla wartości logicznych.

+ +

Składnia

+ +
new Boolean([wartosc])
+ +

Parametry

+ +
+
wartosc 
+
Początkowa wartość obiektu Boolean.
+
+ +

Opis

+ +

Wartość przekazana jako pierwszy parametr jest w razie konieczności konwertowana do wartości logicznej. Jeśli wartość zostanie pominięta lub będzie równa 0, -0, null, false, NaN, będzie pustym łańcuchem znaków ("") lub będzie niezdefiniowana, obiekt przyjmie początkową wartość false. Dowolna inna wartość, włączając łańcuch znaków "false", spowoduje utworzenie obiektu z początkową wartością true.

+ +

Nie należy mylić prostych wartości logicznych true i false z wartościami true i false obiektu Boolean.

+ +

Każdy obiekt, którego wartością nie jest wartość undefined lub null, w tym obiekt Boolean posiadający wartość false, traktowany jest w instrukcjach warunkowych jako true. Przykładowo warunek w poniższej instrukcji if będzie miał wartość true:

+ +
x = new Boolean(false);
+if (x) {
+  // . . . ten kod zostanie wykonany
+}
+
+ +

Taka sytuacja nie zachodzi przy prostych wartościach logicznych. Przykładowo warunek w poniższej instrukcji if będzie miał wartość false::

+ +
x = false;
+if (x) {
+  // . . . ten kod nie zostanie wykonany
+}
+
+ +

Nie należy zatem używać obiektu Boolean do konwersji wartości nie będącej wartością logiczną na wartość typu Boolean. Zamiast tego należy skorzystać z funkcji Boolean():

+ +
x = Boolean(wyrazenie);     // zalecane
+x = new Boolean(wyrazenie); // nie należy używać
+
+ +

Jeśli jako wartość początkową określony zostanie dowolny obiekt, w tym obiekt Boolean o wartości false, nowy obiekt Boolean będzie miał wartość true.

+ +
myFalse = new Boolean(false);   // wartość początkowa: false
+g = new Boolean(myFalse);       // wartość początkowa: true
+myString = new String("Hello"); // obiekt String (łańcuch znaków)
+s = new Boolean(myString);      // wartość początkowa: true
+
+ +

Nie należy używać obiektu Boolean zamiast prostej wartości logicznej.

+ +

Własności

+ +
+
Boolean.length
+
Length property whose value is 1.
+
+ +
+
{{jsxref("Boolean.prototype")}}
+
Definiuje własność współdzieloną przez wszystkie obiekty Boolean.
+
+ +

Metody

+ +

Globalny obiekt Boolean sam w sobie nie zawiera żadnych metod, jednak dziedziczy on niektóre metody poprzez łańcuch prototypu.

+ +
{{jsOverrides("Function", "Methods")}}
+ +

Przykłady

+ +

Tworzenie obiektów Boolean z początkową wartością „fałsz”

+ +
bNoParam = new Boolean();
+bZero = new Boolean(0);
+bNull = new Boolean(null);
+bEmptyString = new Boolean("");
+bfalse = new Boolean(false);
+
+ +

Tworzenie obiektów Boolean z początkową wartością „prawda”

+ +
btrue = new Boolean(true);
+btrueString = new Boolean("true");
+bfalseString = new Boolean("false");
+bSuLin = new Boolean("Su Lin");
+
+ +

Zobacz także

+ + + +
 
diff --git a/files/pl/web/javascript/reference/global_objects/boolean/tosource/index.html b/files/pl/web/javascript/reference/global_objects/boolean/tosource/index.html new file mode 100644 index 0000000000..b41f1c5806 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/boolean/tosource/index.html @@ -0,0 +1,51 @@ +--- +title: Boolean.prototype.toSource() +slug: Web/JavaScript/Referencje/Obiekty/Boolean/toSource +tags: + - Boolean + - JavaScript + - Method + - Non-standard + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Boolean/toSource +--- +
{{JSRef}} {{non-standard_header}}
+ +

Podsumowanie

+ +

Zwraca łańcuch znaków z kodem źródłowym obiektu.

+ +

Składnia

+ +
booleanObj.toSource()
+Boolean.toSource()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Metoda toSource zwraca następujące wartości:

+ + + + + +

Metoda ta jest zwykle stosowana wewnętrznie przez interpreter JavaScriptu, a nie bezpośrednio w kodzie programów.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/boolean/tostring/index.html b/files/pl/web/javascript/reference/global_objects/boolean/tostring/index.html new file mode 100644 index 0000000000..fe61d7bca9 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/boolean/tostring/index.html @@ -0,0 +1,41 @@ +--- +title: Boolean.prototype.toString() +slug: Web/JavaScript/Referencje/Obiekty/Boolean/toString +tags: + - Boolean + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Boolean/toString +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zwraca ciąg znaków reprezentujący dany obiekt Boolean

+ +

Składnia

+ +
bool.toString()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Obiekt {{jsxref("Boolean")}} przesłania metodę toString obiektu {{jsxref("Object")}}, nie dziedziczy metody {{jsxref("Object.prototype.toString()")}}. Dla obiektów Boolean metoda toString zwraca ich tekstową reprezentację.

+ +

JavaScript wywołuje metodę toString samoczynnie, kiedy instancja obiektu {{jsxref("Boolean")}} ma być reprezentowana jako wartość tekstowa lub kiedy instancja obiektu {{jsxref("Boolean")}} jest składnikiem konkatenacji ciągu(-ów) znaków.

+ +

Dla obiektów i wartości {{jsxref("Boolean")}} wbudowana metoda toString zwraca ciąg znaków "true" lub "false" w zależności od wartości obiektu boolowskiego. W poniższym przykładzie flaga.toString zwraca "true".

+ +
var flaga = new Boolean(true)
+var mojaZmienna=flaga.toString()
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/boolean/valueof/index.html b/files/pl/web/javascript/reference/global_objects/boolean/valueof/index.html new file mode 100644 index 0000000000..1e20821efa --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/boolean/valueof/index.html @@ -0,0 +1,43 @@ +--- +title: Boolean.prototype.valueOf() +slug: Web/JavaScript/Referencje/Obiekty/Boolean/valueOf +tags: + - Boolean + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Boolean/valueOf +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zwraca wartość prostą obiektu {{jsxref("Boolean")}}.

+ +

Składnia

+ +
bool.valueOf()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Metoda valueOf obiektu {{jsxref("Boolean")}} zwraca wartość prostą obiektu {{jsxref("Boolean")}} lub literału {{jsxref("Boolean")}} jako typ Boolean.

+ +

Metoda ta jest zwykle wywoływana wewnętrznie przez interpreter JavaScriptu, a nie w typowym kodzie w JavaScripcie.

+ +

Przykłady

+ +

Przykład: Zastosowanie valueOf

+ +
var x = new Boolean();
+myVar = x.valueOf()      // przypisuje myVar wartość false
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/dataview/index.html b/files/pl/web/javascript/reference/global_objects/dataview/index.html new file mode 100644 index 0000000000..db3d459a82 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/dataview/index.html @@ -0,0 +1,118 @@ +--- +title: DataView +slug: Web/JavaScript/Referencje/Obiekty/DataView +translation_of: Web/JavaScript/Reference/Global_Objects/DataView +--- +
{{JSRef}}
+ +

DataView  udostępnia niskopoziowy interfejs do zapisu i odczytu typów numerycznych w formie {{jsxref("ArrayBuffer")}} niezależnie od kodowania platformy.

+ +

Składnia

+ +
new DataView(buffer [, byteOffset [, byteLength]])
+ +

Parametry

+ +
+
buffer
+
Istniejący {{jsxref("ArrayBuffer")}} lub {{jsxref("SharedArrayBuffer")}} {{experimental_inline}} używany jako pamięć dla  obiektu  DataView .
+
byteOffset {{optional_inline}}
+
The offset, in bytes, to the first byte in the specified buffer for the new view to reference. If not specified, the view of the buffer will start with the first byte.
+
byteLength {{optional_inline}}
+
The number of elements in the byte array. If unspecified, length of the view will match the buffer's length.
+
+ +

Return value

+ +

A new DataView object representing the specified data buffer.

+ +

Exceptions

+ +
+
{{jsxref("RangeError")}}
+
Thrown if the byteOffset and byteLength result in the specified view extending past the end of the buffer.
+
+ +

Description

+ +

Endianness

+ +

Multi-byte number formats are represented in memory differently depending on machine architecture, see {{Glossary("Endianness")}} for an explanation. DataView accessors provide explicit control of how data will be accessed irrespective of the platform architecture's endianness.

+ +
var littleEndian = (function() {
+  var buffer = new ArrayBuffer(2);
+  new DataView(buffer).setInt16(0, 256, true /* littleEndian */);
+  // Int16Array uses the platform's endianness.
+  return new Int16Array(buffer)[0] === 256;
+})();
+console.log(littleEndian); // true or false
+
+ +

Properties

+ +

All DataView instances inherit from {{jsxref("DataView.prototype")}} and allows the addition of properties to all DataView objects.

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/DataView/prototype','Properties')}}

+ +

Methods

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/DataView/prototype','Methods')}}

+ +

Example

+ +
var buffer = new ArrayBuffer(16);
+var dv = new DataView(buffer, 0);
+
+dv.setInt16(1, 42);
+dv.getInt16(1); //42
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Typed Array')}}{{Spec2('Typed Array')}}Superseded by ECMAScript 6
{{SpecName('ES6', '#sec-dataview-constructor', 'DataView')}}{{Spec2('ES6')}}Initial definition in an ECMA standard
{{SpecName('ESDraft', '#sec-dataview-constructor', 'DataView')}}{{Spec2('ESDraft')}} 
+ +

Browser compatibility

+ + + +

{{Compat("javascript.builtins.DataView")}}

+ +

Compatibility notes

+ +

Starting with Firefox 40, DataView requires to be constructed with a {{jsxref("Operators/new", "new")}} operator. Calling DataView() as a function without new, will throw a {{jsxref("TypeError")}} from now on.

+ +
var dv = DataView(buffer, 0);
+// TypeError: calling a builtin DataView constructor without new is forbidden
+ +
var dv = new DataView(buffer, 0);
+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getdate/index.html b/files/pl/web/javascript/reference/global_objects/date/getdate/index.html new file mode 100644 index 0000000000..2dcba53fa0 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getdate/index.html @@ -0,0 +1,47 @@ +--- +title: Date.prototype.getDate() +slug: Web/JavaScript/Referencje/Obiekty/Date/getDate +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getDate +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zwraca dzień miesiąca dla określonej daty stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.getDate()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getDate to liczby całkowite z przedziału liczb pomiędzy 1 a 31.

+ +

Przykłady

+ +

Przykład: Zastosowanie getDate()

+ +

Druga instrukcja poniżej przydziela wartość 25 do zmiennej dzien, wartość oparta na Date, obiektu Xmas95.

+ +
var Xmas95 = new Date("December 25, 1995 23:15:00");
+var dzien = Xmas95.getDate();
+
+console.log(dzien), // 25
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getday/index.html b/files/pl/web/javascript/reference/global_objects/date/getday/index.html new file mode 100644 index 0000000000..0c52e4e3dd --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getday/index.html @@ -0,0 +1,47 @@ +--- +title: Date.prototype.getDay() +slug: Web/JavaScript/Referencje/Obiekty/Date/getDay +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getDay +--- +
{{JSRef("Global_Objects", "Date")}}
+ +

Podsumowanie

+ +

Zwraca dzień tygodnia określonej daty, stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.getDay()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartością zwracaną przez getDay jest liczba całkowita, odnosząca się do dnia tygodnia: 0 dla niedzieli, 1 dla poniedziałku, 2 dla wtorku, i tak dalej.

+ +

Przykłady

+ +

Przykład: Zastosowanie getDay()

+ +

Druga instrukcja poniżej przydziela wartość 1 do dzienTyg, opierając się o wartość Date, obiektu Xmas95. 25 grudnia 1995 roku wypadał w poniedziałek.

+ +
var Xmas95 = new Date("December 25, 1995 23:15:00");
+var weekday = Xmas95.getDay();
+
+console.log(weekday); // 1
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getfullyear/index.html b/files/pl/web/javascript/reference/global_objects/date/getfullyear/index.html new file mode 100644 index 0000000000..ecc7d868c0 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getfullyear/index.html @@ -0,0 +1,47 @@ +--- +title: Date.prototype.getFullYear() +slug: Web/JavaScript/Referencje/Obiekty/Date/getFullYear +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getFullYear +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca rok określonej daty, stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.getFullYear()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość getFullYear zwracana jest jako pełna liczba. Dla dat liczba lat zawiera się pomiędzy 1000 i 9999, getFullYear zwraca czterocyfrową liczbę, na przykład: 1995. Użyj tej funkcji, aby być pewnym, że wyświetlona będzie pełna data po roku 2000.

+ +

Użyj tej metody zamiast metody getYear.

+ +

Przykłady

+ +

Przykład: Zastosowanie getFullYear

+ +

Następujący przykład przydziela czterocyfrową wartość aktualnego roku do zmiennej yr.

+ +
var today = new Date();
+var yr = today.getFullYear();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/gethours/index.html b/files/pl/web/javascript/reference/global_objects/date/gethours/index.html new file mode 100644 index 0000000000..a6010ec8c3 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/gethours/index.html @@ -0,0 +1,46 @@ +--- +title: Date.prototype.getHours() +slug: Web/JavaScript/Referencje/Obiekty/Date/getHours +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getHours +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca godzinę określonej daty, stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.getHours()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getHours jest liczbą całkowitą z przedziału od 0 do 23.

+ +

Przykłady

+ +

Przykład: Zastosowanie getHours()

+ +

Druga instrukcja poniżej przydziela wartość liczby 23 zmiennej hours, opartej o wartość Date obiektu Xmas95.

+ +
var Xmas95 = new Date("December 25, 1995 23:15:00");
+var hours = Xmas95.getHours();
+
+console.log(hours); // 23
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getmilliseconds/index.html b/files/pl/web/javascript/reference/global_objects/date/getmilliseconds/index.html new file mode 100644 index 0000000000..1ab98844fc --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getmilliseconds/index.html @@ -0,0 +1,44 @@ +--- +title: Date.prototype.getMilliseconds() +slug: Web/JavaScript/Referencje/Obiekty/Date/getMilliseconds +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getMilliseconds +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca milisekundy określonej daty, stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.getMilliseconds()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getMilliseconds jest liczbą pomiędzy 0 a 999.

+ +

Przykłady

+ +

Przykład: Zastosowanie getMilliseconds()

+ +

Następujący przykład przydziela liczbę milisekund aktualnego czasu do zmiennej ms.

+ +
var today = new Date();
+var ms = today.getMilliseconds();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getminutes/index.html b/files/pl/web/javascript/reference/global_objects/date/getminutes/index.html new file mode 100644 index 0000000000..3ee877bd14 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getminutes/index.html @@ -0,0 +1,48 @@ +--- +title: Date.prototype.getMinutes() +slug: Web/JavaScript/Referencje/Obiekty/Date/getMinutes +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getMinutes +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zwraca minuty dla określonej daty w zależności od czasu lokalnego.

+ +

Składnia

+ +
dateObj.getMinutes()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getMinutes jest liczbą całkowitą z przedziału od 0 do 59.

+ +

Przykłady

+ +

Przykład: Zastosowanie getMinutes

+ +

Druga instrukcja poniżej przypisuje wartość 15 do zmiennej minutes, bazując na wartości obiektu Xmas95 typu Date.

+ +
var Xmas95 = new Date("December 25, 1995 23:15:00");
+var minutes = Xmas95.getMinutes();
+
+console.log(minutes); // 15
+
+ +

Zobacz także

+ +
+ +
diff --git a/files/pl/web/javascript/reference/global_objects/date/getmonth/index.html b/files/pl/web/javascript/reference/global_objects/date/getmonth/index.html new file mode 100644 index 0000000000..bf3e74b56b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getmonth/index.html @@ -0,0 +1,46 @@ +--- +title: Date.prototype.getMonth() +slug: Web/JavaScript/Referencje/Obiekty/Date/getMonth +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getMonth +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca miesiąc dla określonej daty w zależności od czasu lokalnego.

+ +

Składnia

+ +
dateObj.getMonth()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getMonth jest liczbą całkowitą z przedziału od 0 do 11. 0 reprezentuje styczeń, 1 luty, i tak dalej.

+ +

Przykłady

+ +

Przykład: Zastosowanie getMonth()

+ +

Druga instrukcja z przykładu poniżej przypisuje wartość 11 zmiennej month, bazując na wartości obiektu Xmas95 typu Date.

+ +
var Xmas95 = new Date("December 25, 1995 23:15:00");
+var month = Xmas95.getMonth();
+
+console.log(month); // 11
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getseconds/index.html b/files/pl/web/javascript/reference/global_objects/date/getseconds/index.html new file mode 100644 index 0000000000..f471165425 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getseconds/index.html @@ -0,0 +1,46 @@ +--- +title: Date.prototype.getSeconds() +slug: Web/JavaScript/Referencje/Obiekty/Date/getSeconds +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getSeconds +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca sekundy dla określonej daty w zależności od czasu lokalnego.

+ +

Składnia

+ +
dateObj.getSeconds()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getSeconds jest liczbą całkowitą z przedziału od 0 do 59.

+ +

Przykłady

+ +

Przykład: Zastosowanie getSeconds()

+ +

Druga instrukcja poniżej przypisuje wartość 30 do zmiennej secs, bazując na wartości obiektu Xmas95 typu Date.

+ +
var Xmas95 = new Date("December 25, 1995 23:15:30");
+var seconds = Xmas95.getSeconds();
+
+console.log(seconds); // 30
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/gettime/index.html b/files/pl/web/javascript/reference/global_objects/date/gettime/index.html new file mode 100644 index 0000000000..a57da23566 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/gettime/index.html @@ -0,0 +1,47 @@ +--- +title: Date.prototype.getTime() +slug: Web/JavaScript/Referencje/Obiekty/Date/getTime +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getTime +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca liczbę reprezentującą czas dla określonej daty stosownie do czasu uniwersalnego.

+ +

Może być wykorzystana do przypisania daty i czasu do innego obiektu {{jsxref("Date")}}. Ta metoda jest funkcjonalnie równoważna metodzie {{jsxref("Date.valueof", "valueOf()")}}.

+ +

Składnia

+ +
dateObj.getTime()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez metodę getTime jest liczbą milisekund liczoną od 1 stycznia 1970 00:00:00.

+ +

Przykłady

+ +

Przykład: Zastosowanie getTime()

+ +

Następująca instrukcja przypisuje wartość daty theBigDay do sameAsBigDay:

+ +
var theBigDay = new Date("July 1, 1999");
+var sameAsBigDay = new Date();
+sameAsBigDay.setTime(theBigDay.getTime());
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/gettimezoneoffset/index.html b/files/pl/web/javascript/reference/global_objects/date/gettimezoneoffset/index.html new file mode 100644 index 0000000000..7805486fde --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/gettimezoneoffset/index.html @@ -0,0 +1,35 @@ +--- +title: Date.prototype.getTimezoneOffset() +slug: Web/JavaScript/Referencje/Obiekty/Date/getTimezoneOffset +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getTimezoneOffset +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca przesunięcie strefy czasowej w minutach dla bieżącej lokalizacji.

+ +

Składnia

+ +
dateObj.getTimezoneOffset()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Przesunięcie strefy czasowej jest to różnica, wyrażona w minutach, pomiędzy Greenwich Mean Time (GMT) a bieżącym czasem lokalnym. Na przykład, jeśli aktualna strefa to GMT+10, wynikiem jest -600. Wartość nie jest liczbą stałą ze względu na zmiany czasu na letni i zimowy.

+ +

Przykłady

+ +

Przykład: Zastosowanie getTimezoneOffset()

+ +
var x = new Date();
+var currentTimeZoneOffsetInHours = x.getTimezoneOffset() / 60;
+
diff --git a/files/pl/web/javascript/reference/global_objects/date/getutcdate/index.html b/files/pl/web/javascript/reference/global_objects/date/getutcdate/index.html new file mode 100644 index 0000000000..54f031b3d6 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getutcdate/index.html @@ -0,0 +1,45 @@ +--- +title: Date.prototype.getUTCDate() +slug: Web/JavaScript/Referencje/Obiekty/Date/getUTCDate +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getUTCDate +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca dzień (datę) miesiąca dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.getUTCDate()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartością zwracaną przez getUTCDate jest liczba całkowita z przedziału od 1 do 31.

+ +

Przykłady

+ +

Przykład: Zastosowanie getUTCDate()

+ +

Następujący przykład przypisuje aktualny dzień miesiąca do zmiennej d.

+ +
var today = new Date();
+var d = today.getUTCDate();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getutcday/index.html b/files/pl/web/javascript/reference/global_objects/date/getutcday/index.html new file mode 100644 index 0000000000..4ce3b4207b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getutcday/index.html @@ -0,0 +1,45 @@ +--- +title: Date.prototype.getUTCDay() +slug: Web/JavaScript/Referencje/Obiekty/Date/getUTCDay +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getUTCDay +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca dzień tygodnia dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.getUTCDay()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getUTCDay jest liczbą całkowitą określającą dzień tygodnia: 0 dla niedzieli, 1 dla poniedziałku, 2 dla wtorku itd.

+ +

Przykłady

+ +

Przykład: Zastosowanie getUTCDay()

+ +

Następujący przykład przypisuje aktualny dzień tygodnia do zmiennej weekday.

+ +
var today = new Date();
+var weekday = today.getUTCDay();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getutcfullyear/index.html b/files/pl/web/javascript/reference/global_objects/date/getutcfullyear/index.html new file mode 100644 index 0000000000..646affed0e --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getutcfullyear/index.html @@ -0,0 +1,44 @@ +--- +title: Date.prototype.getUTCFullYear() +slug: Web/JavaScript/Referencje/Obiekty/Date/getUTCFullYear +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getUTCFullYear +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca rok dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.getUTCFullYear()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartością zwracaną przez getUTCFullYear jest dodatnia liczba całkowita, zgodna z rokiem 2000, na przykład 1995.

+ +

Przykłady

+ +

Przykład: Zastosowanie getUTCFullYear()

+ +

Następujący przykład przypisuje czterocyfrową liczbę aktualnego roku do zmiennej yr.

+ +
var today = new Date();
+var year = today.getUTCFullYear();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getutchours/index.html b/files/pl/web/javascript/reference/global_objects/date/getutchours/index.html new file mode 100644 index 0000000000..0006fab388 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getutchours/index.html @@ -0,0 +1,44 @@ +--- +title: Date.prototype.getUTCHours() +slug: Web/JavaScript/Referencje/Obiekty/Date/getUTCHours +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getUTCHours +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca godziny dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.getUTCHours()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getUTCHours jest liczbą całkowitą z przedziału od 0 do 23.

+ +

Przykłady

+ +

Przykład: Zastosowanie getUTCHours()

+ +

Następujący przykład przypisuje część aktualnej daty określającą godzinę do zmiennej hrs.

+ +
var today = new Date();
+var hours = today.getUTCHours();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getutcmilliseconds/index.html b/files/pl/web/javascript/reference/global_objects/date/getutcmilliseconds/index.html new file mode 100644 index 0000000000..de048d2998 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getutcmilliseconds/index.html @@ -0,0 +1,44 @@ +--- +title: Date.prototype.getUTCMilliseconds() +slug: Web/JavaScript/Referencje/Obiekty/Date/getUTCMilliseconds +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getUTCMilliseconds +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca milisekundy dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.getUTCMilliseconds()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana getUTCMilliseconds jest liczbą całkowitą z przedziału od 0 do 999.

+ +

Przykłady

+ +

Przykład: Zastosowanie getUTCMilliseconds()

+ +

Następujący przykład przypisuje część aktualnej daty określającą liczbę milisekund do zmiennej ms.

+ +
var today = new Date();
+var ms = today.getUTCMilliseconds();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getutcminutes/index.html b/files/pl/web/javascript/reference/global_objects/date/getutcminutes/index.html new file mode 100644 index 0000000000..aabc9f16e7 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getutcminutes/index.html @@ -0,0 +1,44 @@ +--- +title: Date.prototype.getUTCMinutes() +slug: Web/JavaScript/Referencje/Obiekty/Date/getUTCMinutes +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getUTCMinutes +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca minuty dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.getUTCMinutes()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getUTCMinutes() jest liczbą całkowitą z przedziału od 0 do 59.

+ +

Przykłady

+ +

Przykład: Zastosowanie getUTCMinutes()

+ +

Następujący przykład przypisuje część aktualnej daty określającą minuty do zmiennej min.

+ +
var today = new Date();
+var min = today.getUTCMinutes();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getutcmonth/index.html b/files/pl/web/javascript/reference/global_objects/date/getutcmonth/index.html new file mode 100644 index 0000000000..75899683a3 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getutcmonth/index.html @@ -0,0 +1,44 @@ +--- +title: Date.prototype.getUTCMonth() +slug: Web/JavaScript/Referencje/Obiekty/Date/getUTCMonth +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getUTCMonth +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca miesiąc dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.getUTCMonth()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getUTCMonth() jest liczbą całkowitą z przedziału od 0 do 11 odpowiadającą miesiącowi: 0 dla stycznia, 1 dla lutego, 2 dla marca, i tak dalej.

+ +

Przykłady

+ +

Przykład: Zastosowanie getUTCMonth()

+ +

Następujący przykład przypisuje aktualny miesiąc do zmiennej mon.

+ +
var today = new Date();
+var mon = today.getUTCMonth();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getutcseconds/index.html b/files/pl/web/javascript/reference/global_objects/date/getutcseconds/index.html new file mode 100644 index 0000000000..82f9d40634 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getutcseconds/index.html @@ -0,0 +1,44 @@ +--- +title: Date.prototype.getUTCSeconds() +slug: Web/JavaScript/Referencje/Obiekty/Date/getUTCSeconds +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getUTCSeconds +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zwraca sekundy dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.getUTCSeconds()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez getUTCSeconds() jest liczbą całkowitą z przedziału od 0 do 59.

+ +

Przykłady

+ +

Przykład: Zastosowanie getUTCSeconds()

+ +

Następujący przykład przypisuje część aktualnej daty określającą liczbę sekund do zmiennej sec.

+ +
var today = new Date();
+var sec = today.getUTCSeconds();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/getyear/index.html b/files/pl/web/javascript/reference/global_objects/date/getyear/index.html new file mode 100644 index 0000000000..fdb3c10d75 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/getyear/index.html @@ -0,0 +1,97 @@ +--- +title: Date.prototype.getYear() +slug: Web/JavaScript/Referencje/Obiekty/Date/getYear +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Date/getYear +--- +

{{JSRef}}{{ Deprecated_header() }}

+ +

Podsumowanie

+ +

Zwraca rok dla określonej daty w zależności od czasu lokalnego. Metoda getYear nie jest dłużej wykorzystywana i została zastąpiona metodą {{jsxref("Date.prototype.getFullYear", "getFullYear()")}}.

+ +

Składnia

+ +
dateObj.getYear()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Metoda getYear zwraca rok minus 1900; tak więc:

+ + + + + + + +

Aby obsłużyć lata zarówno przed jak i po roku 2000, należy zamiast getYear użyć metody {{jsxref("Date.prototype.getFullYear", "getFullYear()")}}, która zwraca pełną liczbę określającą rok.

+ +

Kompatybilność wstecz

+ +

JavaScript 1.2 i wersje wcześniejsze

+ +

Metoda getYear() zwraca rok w formacie 2-cyfrowym lub 4-cyfrowym:

+ + + + + +

Przykłady

+ +

Przykład: Lata pomiędzy 1900 i 1999

+ +

Druga instrukcja przypisuje wartość 95 do zmiennej year.

+ +
var Xmas = new Date("December 25, 1995 23:15:00");
+var year = Xmas.getYear(); // zwraca 95
+
+ +

Przykład: Lata powyżej 1999

+ +

Druga instrukcja przypisuje wartość 100 do zmiennej year.

+ +
var Xmas = new Date("December 25, 2000 23:15:00");
+var year = Xmas.getYear(); // zwraca 100
+
+ +

Przykład: Lata poniżej 1900

+ +

Druga instrukcja przypisuje wartość -100 do zmiennej year.

+ +
var Xmas = new Date("December 25, 1800 23:15:00");
+var year = Xmas.getYear(); // zwraca -100
+
+ +

Przykład: Ustawianie i pobieranie roku pomiędzy 1900 i 1999

+ +

Druga instrukcja przypisuje wartość 95 do zmiennej year, reprezentując rok 1995.

+ +
var Xmas.setYear(95);
+var year = Xmas.getYear(); // zwraca 95
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/index.html b/files/pl/web/javascript/reference/global_objects/date/index.html new file mode 100644 index 0000000000..3636152933 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/index.html @@ -0,0 +1,138 @@ +--- +title: Date +slug: Web/JavaScript/Referencje/Obiekty/Date +tags: + - Date + - JavaScript + - data +translation_of: Web/JavaScript/Reference/Global_Objects/Date +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Tworzy instancje Date, które pozwalają na pracę z danymi opisującymi datę i czas.

+ +

Składnia

+ +
new Date();
+new Date(milisekundy);
+new Date(dateString);
+new Date(rok, indeksMiesiąca [, dzień [, godzina [, minuta [, sekunda [, milisekunda]]]]]);
+
+ +

Parametry

+ +
+
milisekundy 
+
Wartość całkowita reprezentująca liczbę milisekund od 1 stycznia 1970, godz. 00:00:00 UTC.
+
+ +
+
dateString 
+
Łańcuch znaków reprezentujący datę. Łańcuch znaków powinien być w formacie rozpoznawalnym przez metodę parse.
+
+ +
+
rok
+
Wartość całkowita reprezentująca rok. Dla zgodności (w celu uniknięcia problemu roku 2000) należy zawsze określać rok w pełnej formie, używając raczej 1998 niż 98.
+
+ +
+
indeksMiesiąca
+
Wartość całkowita reprezentująca miesiąc, począwszy od 0 dla stycznia, kończąc na 11 dla grudnia.
+
+ +
+
dzień
+
Wartość całkowita reprezentująca dzień miesiąca.
+
+ +
+
godzina
+
Wartość całkowita reprezentująca godzinę (w formacie 24-godzinnym).
+
+ +
+
minuta
+
Wartość całkowita reprezentująca część minutową odczytywanego czasu.
+
+ +
+
second
+
Wartość całkowita reprezentująca część sekundową odczytywanego czasu.
+
+ +
+
millisecond
+
Wartość całkowita reprezentująca część milisekundową odczytywanego czasu.
+
+ +

Opis

+ +

Jeśli nie dostarczasz żadnych argumentów, konstruktor tworzy obiekt Date dla dzisiejszej daty i czasu stosownie do czasu lokalnego. Jeśli dostarczasz jakieś argumenty, lecz nie wszystkie, brakujące argumenty mają ustawioną wartość 0. Jeśli jednak dostarczasz jakieś argumenty, musisz dostarczyć co najmniej rok, miesiąc i dzień. Pominąć możesz godzinę, minuty, sekundy i milisekundy.

+ +

Data jest mierzona w milisekundach od północy 1 stycznia 1970 UTC. W jednym dniu jest 86,400,000 milisekund. Zakres wartości obiektu Date wynosi od -100,000,000 dni do 100,000,000 dni w stosunku do 01 stycznia 1970 UTC.

+ +

Obiekt Date zapewnia jednolite działanie bez względu na platformę.

+ +

Obiekt Date wspiera wiele metod UTC (uniwersalny czas światowy) i metody czasu lokalnego. UTC, także znany jako Greenwich Mean Time (GMT), odnosi się do czasu ustanowionego przez "światowy standard czasu" (ang. World Time Standard). Czas lokalny jest czasem, który zna komputer, na jakim jest wykonywany JavaScript.

+ +

Dla kompatybilności z obliczeniami milenijnymi (inaczej, syndromem roku 2000), powinieneś zawsze określić pełen rok, czyli na przykład, używa 1998, nie 98. Aby pomóc Ci w określeniu całego roku, JavaScript zawiera metody {{jsxref("Date.prototype.getFullYear()")}}, {{jsxref("Date.prototype.setFullYear()")}}, {{jsxref("Date.getUTCFullYear()")}} i {{jsxref("Date.setUTCFullYear()")}}.

+ +

Odwoływanie się do Date w kontekście innym niż konstruktor (np. bez operatora {{jsxref("new")}}) będzie zwracało ciąg reprezentujący aktualny czas.

+ +

Własności

+ +
+
{{jsxref("Date.prototype")}}
+
Pozwala dodać własności do obiektu Date.
+
Date.length
+
The value of Date.length is 7. This is the number of arguments handled by the constructor.
+
+
{{jsOverrides("Function", "properties", "prototype")}}
+
+
+ +

Metody

+ +
+
{{jsxref("Date.now()")}}
+
Zwraca wartość liczbową odnoszącą się do aktualnego czasu.
+
{{jsxref("Date.parse()")}}
+
Zwraca liczbę milisekund, które upłynęły od 1 stycznia 1970, 00:00:00 czasu lokalnego do daty podanej jako argument string.
+
{{jsxref("Date.UTC()")}}
+
Zwraca liczbę milisekund, które upłynęły od 1 stycznia 1970, 00:00:00 czasu uniwersalnego do daty podanej jako zestaw liczb (parametry jak w najdłuższej formie konstruktora).
+
+ +

Przykłady

+ +

Przykład: Kilka sposobów na przypisywanie dat

+ +

Poniżej przedstawiono kilka przykładowych przypisań dat:

+ +
var dzisiaj = new Date();
+var urodziny = new Date("December 17, 1995 03:24:00");
+var urodziny = new Date(1995,11,17);
+var urodziny = new Date(1995,11,17,3,24,0);
+
+ +

Przykład: Obliczanie czasu trwania

+ +

Poniższy przykład pokazuje, jak określić czas, jaki minął pomiędzy dwoma datami:

+ +
// używając metod statycznych
+var start = Date.now();
+// zdarzenie, dla którego chciałbyś zmierzyć czas trwania:
+zrobCosPrzezDlugiCzas();
+var stop = Date.now();
+var roznica_czasow = stop - start; // czas w milisekundach
+
+ +
// wykorzystując obiekty Date
+var start = new Date();
+// zdarzenie, dla którego chciałbyś zmierzyć czas trwania:
+zrobCosPrzezDlugiCzas();
+var stop = new Date();
+var roznica_czasow = stop.getTime() - start.getTime(); // czas w milisekundach
+
diff --git a/files/pl/web/javascript/reference/global_objects/date/now/index.html b/files/pl/web/javascript/reference/global_objects/date/now/index.html new file mode 100644 index 0000000000..c0a4e1a690 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/now/index.html @@ -0,0 +1,43 @@ +--- +title: Date.now() +slug: Web/JavaScript/Referencje/Obiekty/Date/now +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Date/now +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zwraca liczbę milisekund, która upłynęła od 1 stycznia 1970 00:00:00 UTC.

+ +

Składnia

+ +
var timeInMs = Date.now();
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Metoda now zwraca milisekundy, które upłynęły od 1 stycznia 1970 00:00:00 UTC do teraz w postaci obiektu {{jsxref("Number")}}.

+ +

Przykłady

+ +

Przykład: Zastosowanie now

+ +

Poniższy przykład używa now do stworzenia znacznika czasu.

+ +
var timestamp = Date.now();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/parse/index.html b/files/pl/web/javascript/reference/global_objects/date/parse/index.html new file mode 100644 index 0000000000..d500500484 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/parse/index.html @@ -0,0 +1,74 @@ +--- +title: Date.parse() +slug: Web/JavaScript/Referencje/Obiekty/Date/parse +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Date/parse +--- +
 {{JSRef}}
+ +

Podsumowanie

+ +

Analizuje łańcuch znaków reprezentujący datę i zwraca liczbę milisekund, które upłynęły od 1 stycznia 1970, 00:00:00 UTC.

+ +

Składnia

+ +
Date.parse(dateString)
+ +

Parametry

+ +
+
dateString 
+
Łańcuch znaków reprezentujący datę.
+
+ +

Opis

+ +

Metoda parse pobiera łańcuch znaków daty (na przykład: "Dec 25, 1995") i zwraca liczbę milisekund, które upłynęły od 1 stycznia 1970, 00:00:00 UTC. Gdy parametr nie zawiera informacji na temat strefy czasowej, domyślnie używana jest lokalna strefa czasowa. Ta funkcja jest przydatna do ustawiania wartości daty w oparciu o wartość łańcucha znaków, przykładowo w połączeniu z metodą {{jsxref("Date.prototype.setTime()", "setTime()")}} oraz obiektem {{jsxref("Date")}}.

+ +

Dla podanego łańcucha znaków reprezentującego czas, parse zwraca wartość czasu. Akceptuje składnię standardu daty - IETF: "Mon, 25 Dec 1995 13:30:00 GMT". Rozpoznaje skróty kontynentalnej strefy czasowej US, lecz w ogólnym zastosowaniu używa się przesunięć dla strefy czasowej, na przykład: "Mon, 25 Dec 1995 13:30:00 GMT+0430" (4 godziny i 30 minut na zachód od południka Greenwich). Jeśli nie określono strefy czasowej, domyślna jest strefa lokalna. GMT i UTC są rozpatrywane jako równoważne.

+ +

Mimo iż specyfikatory strefy czasowej są brane pod uwagę podczas analizy łańcucha znaków do prawidłowej interpretacji argumentu, nie wpływają one jednak na zwracaną wartość, którą zawsze jest ilość milisekund pomiędzy 1 stycznia 1970 roku, 00:00:00 UTC a punktem w czasie reprezentowanym przez argument.

+ +

Ponieważ parse jest metodą statyczną obiektu Date, używamy jej jako Date.parse(), raczej niż jako wywołanie metody utworzonego przez nas obiektu Date.

+ +

Przykłady

+ +

Przykład: Zastosowanie parse

+ +

Jeśli IPOdate jest istniejącym obiektem Date, możemy przypisać mu wartość 9 sierpnia 1995 (czasu lokalnego) w następujący sposób:

+ +
IPOdate.setTime(Date.parse("Aug 9, 1995")) ;
+
+ +

Kilka innych przykładów:

+ +
// Zwraca 807937200000 w strefie czasowej GMT-0300, i inne wartości dla innych stref
+// czasowych, ponieważ argument nie specyfikuje strefy czasowej.
+Date.parse("Aug 9, 1995");
+ +
// Zwraca 807926400000 niezależnie od lokalnej strefy czasowej.
+Date.parse("Wed, 09 Aug 1995 00:00:00 GMT");
+ +
// Zwraca 807937200000 w strefie czasowej GMT-0300, a inne wartości w innych
+// strefach czasowych, ponieważ strefa nie jest wyspecyfikowana w argumencie.
+Date.parse("Wed, 09 Aug 1995 00:00:00");
+ +
// Zwraca 0 niezależnie od lokalnej strefy czasowej.
+Date.parse("Thu, 01 Jan 1970 00:00:00 GMT");
+ +
// Zwraca 14400000 w strefie czasowej GMT-0400, a inne wartości w innych
+// strefach czasowych, ponieważ strefa nie jest podana w argumencie.
+Date.parse("Thu, 01 Jan 1970 00:00:00");
+ +
// Zwraca 14400000 niezależnie od lokalnej strefy czasowej.
+Date.parse("Thu, 01 Jan 1970 00:00:00 GMT-0400");
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setdate/index.html b/files/pl/web/javascript/reference/global_objects/date/setdate/index.html new file mode 100644 index 0000000000..9e0e3db5b9 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setdate/index.html @@ -0,0 +1,43 @@ +--- +title: Date.prototype.setDate() +slug: Web/JavaScript/Referencje/Obiekty/Date/setDate +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setDate +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia dzień miesiąca dla określonej daty stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.setDate(dayValue)
+ +

Parametry

+ +
+
dayValue 
+
Liczba całkowita z przedziału od 1 do 31, reprezentująca dzień miesiąca.
+
+ +

Przykłady

+ +

Przykład: Zastosowanie setDate()

+ +

Druga instrukcja poniżej zmienia dzień miesiąca dla zmiennej theBigDay z jego oryginalnej wartości na 24 lipca.

+ +
var theBigDay = new Date("July 27, 1962 23:30:00");
+var theBigDay.setDate(24);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setfullyear/index.html b/files/pl/web/javascript/reference/global_objects/date/setfullyear/index.html new file mode 100644 index 0000000000..6b9fe390a1 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setfullyear/index.html @@ -0,0 +1,58 @@ +--- +title: Date.prototype.setFullYear() +slug: Web/JavaScript/Referencje/Obiekty/Date/setFullYear +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setFullYear +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia kompletny rok dla określonej daty stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.setFullYear(yearValue[, monthValue[, dayValue]])
+ +

Parametry

+ +
+
yearValue 
+
Liczba całkowita określająca wartość numeryczną roku, na przykład; 1995.
+
+ +
+
monthValue 
+
Liczba całkowita z przedziału od 0 do 11 (reprezentująca miesiące od stycznia do grudnia).
+
+ +
+
dayValue 
+
Liczba całkowita z przedziału od 1 do 31 reprezentująca dzień miesiąca. Jeśli zostaje podany parametr dayValue, należzy również podać monthValue.
+
+ +

Opis

+ +

Jeśli nie zostały podane parametry monthValue i dayValue, biblioteka pobierze te dane z metod {{jsxref("Date.prototype.getMonth()", "getMonth()")}} i {{jsxref("Date.prototype.getDate()", "getDate()")}}.

+ +

Jeżeli określony parametr jest poza oczekiwanym zakresem, setFullYear() spróbuje zaktualizować informacje o dacie w obiekcie Date. Przykładowo, jeśli zostanie podana wartość 15 dla monthValue to rok zostanie zwiększony o 1 (rok+1), a miesiąc zostanie ustawiony na wartość 3.

+ +

Przykłady

+ +

Przykład: Zastosowanie setFullYear()

+ +
var theBigDay = new Date();
+theBigDay.setFullYear(1997);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/sethours/index.html b/files/pl/web/javascript/reference/global_objects/date/sethours/index.html new file mode 100644 index 0000000000..8e3f95ff7d --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/sethours/index.html @@ -0,0 +1,66 @@ +--- +title: Date.prototype.setHours() +slug: Web/JavaScript/Referencje/Obiekty/Date/setHours +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setHours +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia godziny dla określonej daty stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.setHours(hoursValue[, minutesValue[, secondsValue[, msValue]]])
+ +

Do wersji JavaScript 1.3

+ +
dateObj.setHours(hoursValue)
+ +

Parametry

+ +
+
hoursValue 
+
Liczba całkowita pomiędzy 0 i 23, reprezentująca godziny.
+
+ +
+
minutesValue 
+
Liczba całkowita pomiędzy 0 i 59, reprezentująca minuty.
+
+ +
+
secondsValue 
+
Liczba całkowita pomiędzy 0 i 59, reprezentująca sekundy. Jeśli określisz parametr secondsValue, musisz także określić minutesValue.
+
+ +
+
msValue 
+
A Liczba pomiędzy 0 i 999, reprezentująca milisekundy. Jeśli określisz parametr msValue, musisz także określić minutesValue i secondsValue.
+
+ +

Opis

+ +

Jeśli nie określisz parametrów minutesValue, secondsValue i msValue, wartość zwracana użytych metod {{jsxref("Date.prototype.getMinutes()", "getMinutes()")}}, {{jsxref("Date.prototype.getSeconds()", "getSeconds()")}} i {{jsxref("Date.prototype.getMilliseconds()", "getMilliseconds()")}}.

+ +

Jeśli Twój parametr jest określony z poza szeregu, setHours próbuje zaktualizować informacje o dacie w obiekcie {{jsxref("Date")}}. Na przykład, jeśli użyjesz wartości 100 dla secondsValue, minuty będą wzrastać o 1 (min + 1), i wartość 40 będzie użyta dla sekund.

+ +

Przykłady

+ +

Przykład: Zastosowanie setHours()

+ +
var the BigDay = new Date();
+theBigDay.setHours(7);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setmilliseconds/index.html b/files/pl/web/javascript/reference/global_objects/date/setmilliseconds/index.html new file mode 100644 index 0000000000..c2a1359801 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setmilliseconds/index.html @@ -0,0 +1,45 @@ +--- +title: Date.prototype.setMilliseconds() +slug: Web/JavaScript/Referencje/Obiekty/Date/setMilliseconds +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setMilliseconds +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia milisekundy dla określonej daty stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.setMilliseconds(millisecondsValue)
+ +

Parametry

+ +
+
millisecondsValue 
+
Liczba pomiędzy 0 a 999, reprezentująca milisekundy.
+
+ +

Opis

+ +

Jeśli sprecyzujesz liczbę z poza oczekiwanego szeregu, informacje zawarte w obiekcie Date będą aktualizowane. Na przykład, jeśli określisz 1005, liczba sekund rośnie o 1, i 5 jest użyte dla milisekund.

+ +

Przykłady

+ +

Przykład: Zastosowanie setMilliseconds()

+ +
var theBigDay = new Date();
+theBigDay.setMilliseconds(100);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setminutes/index.html b/files/pl/web/javascript/reference/global_objects/date/setminutes/index.html new file mode 100644 index 0000000000..011137c893 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setminutes/index.html @@ -0,0 +1,60 @@ +--- +title: Date.prototype.setMinutes() +slug: Web/JavaScript/Referencje/Obiekty/Date/setMinutes +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setMinutes +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia minuty dla określonej daty stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.setMinutes(minutesValue[, secondsValue[, msValue]])
+ +

Do wersji JavaScript 1.3

+ +
dateObj.setMinutes(minutesValue)
+ +

Parametry

+ +
+
minutesValue 
+
Liczba całkowita pomiędzy 0 i 59, reprezentująca minuty.
+
+ +
+
secondsValue 
+
Liczba całkowita pomiędzy 0 i 59, reprezentująca sekundy. Jeśli określisz parametr secondsValue, musisz także określić minutesValue.
+
+ +
+
msValue 
+
Liczba pomiędzy 0 i 999, reprezentująca milisekundy. Jeśli określisz parametr msValue, musisz także określić minutesValue i secondsValue.
+
+ +

Opis

+ +

Jeśli nie określono parametrów secondsValue i msValue, są użyte wartości zwracanych metod getSeconds i getMilliseconds.

+ +

Jeśli Twój parametr jest określony z poza szeregu, setMinutes próbuje zaktualizować informacje o dacie w obiekcie Date. Na przykład, jeśli użyjesz wartości 100 dla secondsValue, minuty (minutesValue) będą wzrastać o 1 (minutesValue + 1) i wartość 40 będzie użyta dla sekund.

+ +

Przykłady

+ +

Przykład: Zastosowanie setMinutes()

+ +
var theBigDay = new Date();
+theBigDay.setMinutes(45);
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setmonth/index.html b/files/pl/web/javascript/reference/global_objects/date/setmonth/index.html new file mode 100644 index 0000000000..7016cb97e1 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setmonth/index.html @@ -0,0 +1,56 @@ +--- +title: Date.prototype.setMonth() +slug: Web/JavaScript/Referencje/Obiekty/Date/setMonth +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setMonth +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia nazwę miesiąca dla określonej daty stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.setMonth(monthValue[, dayValue])
+ +

Do wersji JavaScript 1.3

+ +
dateObj.setMonth(monthValue)
+ +

Parametry

+ +
+
monthValue 
+
Liczba całkowita z przedziału 0 i 11 (reprezentuje miesiące od stycznia do grudnia).
+
+ +
+
dayValue 
+
Liczba całkowita z przedziału 1 i 31, reprezentuje dzień miesiąca.
+
+ +

Opis

+ +

Jeśli nie określisz parametru dayValue, zostanie zwrócona wartość użytej metody getDate.

+ +

Jeśli Twój parametr jest określony z poza szeregu, setMonth() próbuje zaktualizować informacje o dacie w obiekcie Date. Na przykład, jeśli użyjesz wartości 15 dla monthValue, rok wzrośnie o 1 (year + 1) i 3 będzie użyte dla miesiąca.

+ +

Przykłady

+ +

Przykład: Zastosowanie setMonth()

+ +
var theBigDay = new Date;
+theBigDay.setMonth(6);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setseconds/index.html b/files/pl/web/javascript/reference/global_objects/date/setseconds/index.html new file mode 100644 index 0000000000..7a50dd98a7 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setseconds/index.html @@ -0,0 +1,56 @@ +--- +title: Date.prototype.setSeconds() +slug: Web/JavaScript/Referencje/Obiekty/Date/setSeconds +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setSeconds +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia sekundy dla określonej daty stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.setSeconds(secondsValue[, msValue])
+ +

Do wersji JavaScript 1.3

+ +
dateObj.setSeconds(secondsValue)
+ +

Parametry

+ +
+
secondsValue 
+
Liczba całkowita z przedziału 0 i 59.
+
+ +
+
msValue 
+
Liczba z przedziału 0 i 999, reprezentująca milisekundy.
+
+ +

Opis

+ +

Jeśli nie określisz parametru msValue, wartość zwracana użytej metody {{jsxref("Date.prototype.getMilliseconds()", "getMilliseconds()")}}.

+ +

Jeśli Twój parametr jest określony z poza szeregu, setSeconds() próbuje zaktualizować informacje o dacie w obiekcie {{jsxref("Date")}}. Na przykład, jeśli użyjesz wartości 100 dla secondsValue, minuty zawarte w obiekcie {{jsxref("Date")}} będą wzrastać o 1 i wartość 40 będzie użyta dla sekund.

+ +

Przykłady

+ +

Przykład: Zastosowanie setSeconds()

+ +
var theBigDay = new Date();
+theBigDay.setSeconds(30);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/settime/index.html b/files/pl/web/javascript/reference/global_objects/date/settime/index.html new file mode 100644 index 0000000000..5aca5a36d7 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/settime/index.html @@ -0,0 +1,46 @@ +--- +title: Date.prototype.setTime() +slug: Web/JavaScript/Referencje/Obiekty/Date/setTime +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setTime +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia wartość obiektu {{jsxref("Date")}} stosownie do czasu lokalnego.

+ +

Składnia

+ +
dateObj.setTime(timeValue)
+ +

Parametry

+ +
+
timeValue 
+
Liczba całkowita reprezentująca liczbę milisekund liczonych od 1 stycznia 1970, 00:00:00.
+
+ +

Opis

+ +

Użyj metody setTime(), aby pomóc przydzielić dacie czas następnego obiektu {{jsxref("Date")}}.

+ +

Przykłady

+ +

Przykład: Zastosowanie setTime()

+ +
var theBigDay = new Date("July 1, 1999");
+var sameAsBigDay = new Date();
+sameAsBigDay.setTime(theBigDay.getTime())
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setutcdate/index.html b/files/pl/web/javascript/reference/global_objects/date/setutcdate/index.html new file mode 100644 index 0000000000..81496f9c1f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setutcdate/index.html @@ -0,0 +1,45 @@ +--- +title: Date.prototype.setUTCDate() +slug: Web/JavaScript/Referencje/Obiekty/Date/setUTCDate +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setUTCDate +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia dzień miesiąca dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.setUTCDate(dayValue)
+ +

Parametry

+ +
+
dayValue 
+
Liczba całkowita od 1 do 31, reprezentująca dni miesiąca.
+
+ +

Opis

+ +

Jeśli Twój parametr jest określony z poza szeregu, setUTCDate() próbuje zaktualizować informacje o dacie w obiekcie {{jsxref("Date")}}. Na przykład, jeśli użyjesz wartości 40 dla dayValue, i nazwa miesiąca jaki jest w danym momencie przechowywany w obiekcie {{jsxref("Date")}} będzie czerwcem, to do dni przypiszemy wartość 10, ale wyświetlaną nazwą miesiąca będzie już lipiec.

+ +

Przykłady

+ +

Przykład: Zastosowanie setUTCDate()

+ +
var theBigDay = new Date();
+theBigDay.setUTCDate(20);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setutcfullyear/index.html b/files/pl/web/javascript/reference/global_objects/date/setutcfullyear/index.html new file mode 100644 index 0000000000..71ea1db756 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setutcfullyear/index.html @@ -0,0 +1,57 @@ +--- +title: Date.prototype.setUTCFullYear() +slug: Web/JavaScript/Referencje/Obiekty/Date/setUTCFullYear +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setUTCFullYear +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia pełen rok dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.setUTCFullYear(yearValue[, monthValue[, dayValue]])
+ +

Parametry

+ +
+
yearValue 
+
Liczba całkowita określająca numerycznie wartość roku, na przykład: 1995.
+
+ +
+
monthValue 
+
Liczba całkowita pomiędzy 0 a 11, reprezentuje nazwy miesięcy, od stycznia do grudnia.
+
+ +
+
dayValue 
+
Liczba całkowita pomiędzy 1 a 31, reprezentuje dzień miesiąca. Jeśli określimy parametr dayValue, to musimy także sprecyzować monthValue.
+
+ +

Opis

+ +

Jeśli nie określisz parametrów monthValue i dayValue, wartość zwracana metod {{jsxref("Date.prototype.getUTCMonth()", "getUTCMonth()")}} i {{jsxref("Date.prototype.getUTCDate()", "getUTCDate()")}} jest w użyciu.

+ +

Jeśli Twój parametr jest określony z poza szeregu, setUTCFullYear() próbuje zaktualizować informacje o dacie w obiekcie Date. Na przykład, jeśli użyjesz wartości 15 dla monthValue, lata będą wzrastać o 1 (rok + 1), i 3 jest użyta jako miesiąc.

+ +

Przykłady

+ +

Przykład: Zastosowanie setUTCFullYear()

+ +
var theBigDay = new Date();
+theBigDay.setUTCFullYear(1997);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setutchours/index.html b/files/pl/web/javascript/reference/global_objects/date/setutchours/index.html new file mode 100644 index 0000000000..437e4bae2f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setutchours/index.html @@ -0,0 +1,62 @@ +--- +title: Date.prototype.setUTCHours() +slug: Web/JavaScript/Referencje/Obiekty/Date/setUTCHours +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setUTCHours +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia godzinę dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.setUTCHours(hoursValue[, minutesValue[, secondsValue[, msValue]]])
+ +

Parametry

+ +
+
hoursValue 
+
Liczba całkowita pomiędzy 0 a 23, reprezentująca godzinę.
+
+ +
+
minutesValue 
+
Liczba całkowita pomiędzy 0 a 59, reprezentująca minutami.
+
+ +
+
secondsValue 
+
Liczba całkowita pomiędzy 0 a 59, reprezentująca sekundy. Jeśli określisz parametr secondsValue, to musisz także określić parametr minutesValue.
+
+ +
+
msValue 
+
Liczba pomiędzy 0 a 999, reprezentująca milisekundy. Jeśli określisz parametr msValue, to musisz także określić parametry minutesValue i secondsValue.
+
+ +

Opis

+ +

Jeśli nie określisz parametrów minutesValue, secondsValue i msValue, wartość zwracana będzie użytych metod {{jsxref("Date.prototype.getUTCMinutes()", "getUTCMinutes()")}}, {{jsxref("Date.prototype.getUTCSeconds()", "getUTCSeconds()")}} i {{jsxref("Date.prototype.getUTCMilliseconds()", "getUTCMilliseconds()")}}.

+ +

Jeśli Twój parametr jest określony z poza szeregu, setUTCHours() próbuje zaktualizować informacje o dacie w obiekcie Date. Na przykład, jeśli użyjesz wartości 100 dla secondsValue, minuty zawarte w obiekcie Date będą wzrastać o 1 i wartość 40 będzie użyta dla sekund.

+ +

Przykłady

+ +

Przykład: Zastosowanie setUTCHours()

+ +
var theBigDay = new Date();
+theBigDay.setUTCHours(8);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setutcmilliseconds/index.html b/files/pl/web/javascript/reference/global_objects/date/setutcmilliseconds/index.html new file mode 100644 index 0000000000..f12fd4c838 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setutcmilliseconds/index.html @@ -0,0 +1,45 @@ +--- +title: Date.prototype.UTCMilliseconds() +slug: Web/JavaScript/Referencje/Obiekty/Date/setUTCMilliseconds +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setUTCMilliseconds +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia milisekundy dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.setUTCMilliseconds(millisecondsValue)
+ +

Parametry

+ +
+
millisecondsValue 
+
Liczba pomiędzy 0 a 999, reprezentująca milisekundy.
+
+ +

Opis

+ +

Jeśli parametr, który określiłeś jest z poza szeregu, setUTCMilliseconds() próbuje zaktualizować informacje o dacie w obiekcie {{jsxref("Date")}}. Na przykład, jeśli użyjesz 1100 dla millisecondsValue, sekunda przechowana w obiekcie {{jsxref("Date")}} wzrośnie o 1 i wartość 100 będzie użyta dla milisekund.

+ +

Przykłady

+ +

Przykład: Zastosowanie setUTCMilliseconds()

+ +
var theBigDay = new Date();
+theBigDay.setUTCMilliseconds(500);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setutcminutes/index.html b/files/pl/web/javascript/reference/global_objects/date/setutcminutes/index.html new file mode 100644 index 0000000000..d3ea20bafa --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setutcminutes/index.html @@ -0,0 +1,57 @@ +--- +title: Date.prototype.setUTCMinutes() +slug: Web/JavaScript/Referencje/Obiekty/Date/setUTCMinutes +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setUTCMinutes +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia minuty dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.setUTCMinutes(minutesValue[, secondsValue[, msValue]])
+ +

Parametry

+ +
+
minutesValue 
+
Liczba całkowita pomiędzy 0 i 59, reprezentująca minuty.
+
+ +
+
secondsValue 
+
Liczba całkowita pomiędzy 0 i 59, reprezentująca sekundy. Jeśli określisz parametr secondsValue, musisz także określić minutesValue.
+
+ +
+
msValue 
+
Liczba pomiędzy 0 i 999, reprezentująca milisekundy. Jeśli określisz parametr msValue, musisz także określić minutesValue i secondsValue.
+
+ +

Opis

+ +

Jeśli nie określono parametrów secondsValue i msValue, są użyte wartości zwracanych metod {{jsxref("Date.prototype.getUTCSeconds()", "getUTCSeconds()")}} i {{jsxref("Date.prototype.getUTCMilliseconds()", "getUTCMilliseconds()")}}.

+ +

Jeśli Twój parametr jest określony z poza szeregu, setUTCMinutes() próbuje zaktualizować informacje o dacie w obiekcie {{jsxref("Date")}}. Na przykład, jeśli użyjesz wartości 100 dla secondsValue, minuty (minutesValue) będą wzrastać o 1 (minutesValue + 1) i wartość 40 będzie użyta dla sekund.

+ +

Przykłady

+ +

Przykład: Zastosowanie setUTCMinutes()

+ +
var theBigDay = new Date();
+theBigDay.setUTCMinutes(43);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setutcmonth/index.html b/files/pl/web/javascript/reference/global_objects/date/setutcmonth/index.html new file mode 100644 index 0000000000..78448e441f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setutcmonth/index.html @@ -0,0 +1,52 @@ +--- +title: Date.prototype.setUTCMonth() +slug: Web/JavaScript/Referencje/Obiekty/Date/setUTCMonth +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setUTCMonth +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia miesiąc dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.setUTCMonth(monthValue[, dayValue])
+ +

Parametry

+ +
+
monthValue 
+
Liczba całkowita pomiędzy 0 a 11, reprezentująca nazwy miesięcy od stycznia do grudnia.
+
+ +
+
dayValue 
+
Liczba całkowita od 1 do 31, reprezentująca dzień miesiąca.
+
+ +

Opis

+ +

Jeśli nie określisz parametru dayValue, zostanie zwrócona wartość użytej metody {{jsxref("Date.prototype.getUTCDate()", "getUTCDate()")}}.

+ +

Jeśli Twój parametr jest określony z poza szeregu, setUTCMonth() próbuje zaktualizować informacje o dacie w obiekcie {{jsxref("Date")}}. Na przykład, jeśli użyjesz wartości 15 dla monthValue, rok wzrośnie o 1 (rok + 1) i 3, które pozostało będzie użyte dla miesiąca.

+ +

Przykłady

+ +

Przykład: Zastosowanie setUTCMonth()

+ +
var theBigDay = new Date();
+theBigDay.setUTCMonth(11);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setutcseconds/index.html b/files/pl/web/javascript/reference/global_objects/date/setutcseconds/index.html new file mode 100644 index 0000000000..8e8d003b67 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setutcseconds/index.html @@ -0,0 +1,52 @@ +--- +title: Date.prototype.setUTCSeconds() +slug: Web/JavaScript/Referencje/Obiekty/Date/setUTCSeconds +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setUTCSeconds +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Ustawia sekundy dla określonej daty stosownie do czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.setUTCSeconds(secondsValue[, msValue])
+ +

Parametry

+ +
+
secondsValue 
+
Liczba całkowita pomiędzy 0 a 59.
+
+ +
+
msValue 
+
Liczba pomiędzy 0 a 999, reprezentująca milisekundy.
+
+ +

Opis

+ +

Jeśli nie określisz parametru msValue, wartość zwracana jest z użytej metody {jsxref("Date.prototype.getUTCMilliseconds()", "getUTCMilliseconds()")}}.

+ +

Jeśli Twój parametr jest określony z poza szeregu, setUTCSeconds() próbuje zaktualizować informacje o dacie w obiekcie {{jsxref("Date")}}. Na przykład, jeśli użyjesz wartości 100 dla secondsValue, minuty zawarte w obiekcie {{jsxref("Date")}} będą wzrastać o 1 i wartość 40 będzie użyta dla sekund.

+ +

Przykłady

+ +

Przykład: Zastosowanie setUTCSeconds()

+ +
var theBigDay = new Date();
+theBigDay.setUTCSeconds(20);
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/setyear/index.html b/files/pl/web/javascript/reference/global_objects/date/setyear/index.html new file mode 100644 index 0000000000..ac89b296c7 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/setyear/index.html @@ -0,0 +1,52 @@ +--- +title: Date.prototype.setYear() +slug: Web/JavaScript/Referencje/Obiekty/Date/setYear +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/setYear +--- +

{{jSRef}}{{ Deprecated_header() }}

+ +

Podsumowanie

+ +

Ustawia rok dla określonej daty stosownie do czasu lokalnego. Aby móc korzystać z roczników przed i po roku 2000, powinieneś użyć metody {{jsxref("Date.prototype.setFullYear()", "setFullYear()")}} zawierającej setYear(), która rok potrafi określić w pełni.

+ +

Składnia

+ +
dateObj.setYear(yearValue)
+ +

Parametry

+ +
+
yearValue 
+
Liczba całkowita.
+
+ +

Opis

+ +

Jeśli yearValue jest liczbą pomiędzy 0 a 99 (inclusive), to rok dla dateObjectName jest ustawiany - 1900 + yearValue. W innym przypadku, rok dla dateObjectName jest ustawiany w postaci wyświetlenia yearValue.

+ +

Przykłady

+ +

Przykład: Zastosowanie setYear()

+ +

Dwie pierwsze linie ustawiają rok w dacie na 1996. Trzecia ustawia rok na 2000.

+ +
var theBigDay = new Date();
+
+theBigDay.setYear(96)
+theBigDay.setYear(1996)
+theBigDay.setYear(2000)
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/togmtstring/index.html b/files/pl/web/javascript/reference/global_objects/date/togmtstring/index.html new file mode 100644 index 0000000000..2b4c296723 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/togmtstring/index.html @@ -0,0 +1,44 @@ +--- +title: Date.prototype.toGMTString() +slug: Web/JavaScript/Referencje/Obiekty/Date/toGMTString +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Date/toGMTString +--- +

{{JSRef}}{{ Deprecated_header() }}

+ +

Podsumowanie

+ +

Konwertuje datę na łańcuch znaków używając konwersji czasu GMT. Dokładny format zwracanych wartości toGMTString() różni się w zależności platformy.

+ +
+

Metoda toGMTString jest nie długo używana i została ona zastąpiona metodą {{jsxref("Date.prototype.toUTCString()", "toUTCString()")}}. Powinieneś używać {{jsxref("Date.prototype.toUTCString()", "toUTCString()")}} zamiast toGMTSTring().

+
+ +

Składnia

+ +
dateObj.toGMTString()
+ +

Przykłady

+ +

Przykład: Zastosowanie toGMTString()

+ +

W następującym przykładzie jest dzisiejsza data obiektu Date:

+ +
var today = new Date();
+var str = today.toGMTString();
+
+console.log(str); // Mon, 18 Dec 1995 17:28:35 GMT
+ +

W tym przykładzie metoda toGMTString konwertuje datę w czasie GMT (UTC) używanego przez system operacyjny w odpowiedniej strefie czasowej i zwraca wartość łańcucha znaków, która jest podobna do następującej formy. Format jest w pełni zależny od platformy.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/tojson/index.html b/files/pl/web/javascript/reference/global_objects/date/tojson/index.html new file mode 100644 index 0000000000..2509e99319 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/tojson/index.html @@ -0,0 +1,70 @@ +--- +title: Date.prototype.toJSON() +slug: Web/JavaScript/Referencje/Obiekty/Date/toJSON +translation_of: Web/JavaScript/Reference/Global_Objects/Date/toJSON +--- +
{{JSRef}}
+ +
Zwraca objekt {{jsxref("Date")}} w postaci tekstu.
+ + + +

Składnia

+ +
dateObj.toJSON()
+
+ +

Opis

+ +

toJSON() zwraca ciąg znaków (using {{jsxref("Date.prototype.toISOString()", "toISOString()")}}) reprezentujący wartość obiektu {{jsxref("Date")}}.

+ +

Przykłady

+ +

Użycie toJSON()

+ +
var jsonDate = (new Date()).toJSON();
+var backToDate = new Date(jsonDate);
+
+console.log(jsonDate); //2015-10-26T07:46:36.611Z
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES5.1', '#sec-15.9.5.44', 'Date.prototype.toJSON')}}{{Spec2('ES5.1')}}Początkowa definicja zaimplementowana w JavaScript 1.8.5.
{{SpecName('ES6', '#sec-date.prototype.tojson', 'Date.prototype.toJSON')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-date.prototype.tojson', 'Date.prototype.toJSON')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność

+ + + +

{{Compat("javascript.builtins.Date.toJSON")}}

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/tolocaledatestring/index.html b/files/pl/web/javascript/reference/global_objects/date/tolocaledatestring/index.html new file mode 100644 index 0000000000..c3b4b44198 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/tolocaledatestring/index.html @@ -0,0 +1,55 @@ +--- +title: Date.prototype.toLocaleDateString() +slug: Web/JavaScript/Referencje/Obiekty/Date/toLocaleDateString +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca "date", porcje daty jako łańcuch znaków, używając aktualnych lokalnych konwersji.

+ +

Metoda toLocaleDateString polega na znalezieniu formatu daty w systemie operacyjnym. Konwertuje datę do łańcucha znakowego używając konwencji formatowania systemu operacyjnego, gdzie skrypt jest uruchomiony. Na przykład, w USA, miesiąc pojawia się przed dniem (04/15/98), gdzie w Niemczech data wyświetla miesiąc po dniu (15.04.98). Jeśli system operacyjny nie używa, nie spełnia roku 2000 i nie używa pełnego roku dla lat przed 1900 lub po 2000, toLocaleDateString zwraca łańcuch znakowy, który nie jest uległy wobec roku 2000. toLocaleDateString postępuje podobnie do toString, kiedy konwertuje rok, który system operacyjny ma w niewłaściwym formacie.

+ +

Metody takie jak getHours, getMinutes i getSeconds dają więcej przenośnych rezultatów niż toLocaleDateString.

+ +

Składnia

+ +
dateObj.toLocaleDateString([locales [, options]])
+ +

Parametry

+ +

Check the {{anch("Browser compatibility")}} section to see which browsers support the locales and options arguments, and the Example: Checking for support for locales and options arguments for feature detection.

+ +
{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat', 'Parameters')}}
+ +

The default value for each date-time component property is {{jsxref("Global_Objects/undefined", "undefined")}}, but if the weekday, year, month, day properties are all {{jsxref("Global_Objects/undefined", "undefined")}}, then year, month, and day are assumed to be "numeric".

+ +

Przykłady

+ +

Przykład: Zastosowanie toLocaleDateString()

+ +

Następujący przykład today jest obiektem Date:

+ +
var today = new Date(95,11,18,17,28,35) //miesiąc jest reprezentowany przez liczby od 0 do 11
+today.toLocaleDateString()
+
+ +

W tym przykładzie, toLocaleDateString zwraca łańcuch znakowy, który jest podobny do poniższej formy. Dokładny format, jaki znajduje się na platformie.

+ +
12/18/95
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/tolocalestring/index.html b/files/pl/web/javascript/reference/global_objects/date/tolocalestring/index.html new file mode 100644 index 0000000000..60cb1c2853 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/tolocalestring/index.html @@ -0,0 +1,51 @@ +--- +title: Date.prototype.toLocaleString() +slug: Web/JavaScript/Referencje/Obiekty/Date/toLocaleString +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/toLocaleString +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Konwertuje datę na łańcuch znakowy, używając aktualnej lokalnej konwersji.

+ +

Metoda toLocaleString polega na znalezieniu formatu daty w systemie operacyjnym. Konwertuje datę do łańcucha znakowego używając konwencji formatowania systemu operacyjnego, gdzie skrypt jest uruchomiony. Na przykład, w USA, miesiąc pojawia się przed dniem (04/15/98), gdzie w Niemczech data wyświetla miesiąc, zaraz po dniu (15.04.98). Jeśli system operacyjny nie używa, nie spełnia roku 2000 i nie używa pełnego roku dla lat przed 1900 lub po 2000, toLocaleString zwraca łańcuch znakowy, który nie jest uległy wobec roku 2000. toLocaleString postępuje podobnie do toString, kiedy konwertuje rok, który system operacyjny ma w niewłaściwym formacie.

+ +

Metody, takie jak getHours, getMinutes i getSeconds dają więcej przenośnych rezultatów niż toLocaleString

+ +

Składnia

+ +
dateObj.toLocaleString([locales[, options]])
+ +

Parametry

+ +

Check the Browser compatibility section to see which browsers support the locales and options arguments, and the Example: Checking for support for locales and options arguments for feature detection.

+ +
{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat', 'Parameters')}}
+ +

The default value for each date-time component property is {{jsxref("Global_Objects/undefined", "undefined")}}, but if the weekday, year, month, day, hour, minute, second properties are all {{jsxref("Global_Objects/undefined", "undefined")}}, then year, month, day, hour, minute, and second are assumed to be "numeric".

+ +

Przykłady

+ +

Zastosowanie toLocaleString()

+ +

W następującym przykładzie, obiekt today jest Date:

+ +
var today = new Date(95,11,18,17,28,35); //miesiące są reprezentowane poprzez liczby od 0 do 11
+today.toLocaleString(); // 12/18/95 17:28:35
+ +

W tym przykładzie, toLocaleString zwraca łańcuch znaków, który jest podobny do następującej formy. Dokładnie to taki format, jaki jest w systemie.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/tolocaletimestring/index.html b/files/pl/web/javascript/reference/global_objects/date/tolocaletimestring/index.html new file mode 100644 index 0000000000..e41dce512d --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/tolocaletimestring/index.html @@ -0,0 +1,52 @@ +--- +title: Date.prototype.toLocaleTimeString() +slug: Web/JavaScript/Referencje/Obiekty/Date/toLocaleTimeString +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Date/toLocaleTimeString +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca "czas", porcje daty jako łańcuch znaków, używając aktualnych lokalnych konwersji.

+ +

Metoda toLocaleTimeString polega na znalezieniu formatu daty w systemie operacyjnym. Konwertuje datę do łańcucha znakowego używając konwencji formatowania systemu operacyjnego, gdzie skrypt jest uruchomiony. Na przykład, w USA, miesiąc pojawia się przed dniem (04/15/98), gdzie w Niemczech data wyświetla miesiąc po dniu (15.04.98). Jeśli system operacyjny nie używa, nie spełnia roku 2000 i nie używa pełnego roku dla lat przed 1900 lub po 2000, toLocaleTimeString zwraca łańcuch znakowy, który nie jest uległy wobec roku 2000. toLocaleTimeString postępuje podobnie do toString, kiedy konwertuje rok, który system operacyjny ma w nie właściwym formacie.

+ +

Metody takie jak getHours, getMinutes i getSeconds dają więcej podobnych rezultatów niż toLocaleTimeString.

+ +

Składnia

+ +
dateObj.toLocaleTimeString([locales[, options]])
+ +

Parametry

+ +

Check the Browser compatibility section to see which browsers support the locales and options arguments, and the Example: Checking for support for locales and options arguments for feature detection.

+ +
{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat', 'Parameters')}}
+ +

The default value for each date-time component property is {{jsxref("Global_Objects/undefined", "undefined")}}, but if the hour, minute, second properties are all {{jsxref("Global_Objects/undefined", "undefined")}}, then hour, minute, and second are assumed to be "numeric".

+ +

Przykłady

+ +

Zastosowanie toLocaleTimeString()

+ +

W następującym przykładzie, today jest obiektem Date object:

+ +
var today = new Date(95,11,18,17,28,35); //miesiące są reprezentowane przez liczby od 0 do 11
+today.toLocaleTimeString(); // 17:28:35
+ +

W tym przykładzie, toLocaleTimeString zwraca wartość łańcucha znakowego, która jest podobna do następującej formy. Dokładny format, jaki znajduje się na platformie.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/tosource/index.html b/files/pl/web/javascript/reference/global_objects/date/tosource/index.html new file mode 100644 index 0000000000..8c82e39b09 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/tosource/index.html @@ -0,0 +1,49 @@ +--- +title: Date.prototype.toSource() +slug: Web/JavaScript/Referencje/Obiekty/Date/toSource +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/toSource +--- +
{{JSRef}} {{non-standard_header}}
+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący kod źródłowy obiektu.

+ +

Składnia

+ +
dateObj.toSource()
+Date.toSource()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Metoda toSource() zwraca następującą wartość:

+ + + +
function Date() {
+   [native code]
+}
+
+ + + +

Ta metoda jest często nazywana wewnętrzną metodą JavaScript i jest nie wyraźna w kodzie.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/tostring/index.html b/files/pl/web/javascript/reference/global_objects/date/tostring/index.html new file mode 100644 index 0000000000..7d2ea5d92c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/tostring/index.html @@ -0,0 +1,49 @@ +--- +title: Date.prototype.toString() +slug: Web/JavaScript/Referencje/Obiekty/Date/toString +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/toString +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków, reprezentujący określony obiekt Date.

+ +

Składnia

+ +
dateObj.toString()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Obiekt {{jsxref("Date")}} przesłania metodę toString z obiektu {{jsxref("Object")}}; nie dziedziczy {{jsxref("Object.prototype.toString()")}}. Dla obiektów {{jsxref("Date")}}, metoda toString() zwraca łańcuch znaków, które reprezentują obiekt.

+ +

JavaScript wywołuje metodę toString() automatycznie wtedy, gdy data jest reprezentowana jako wartość tekstowa lub kieruje powiązanym łańcuchem znaków.

+ +

Przykłady

+ +

Przykład: Zastosowanie toString()

+ +

Następujący przykład przydziela toString wartość obiektu Date do myVar:

+ +
var x = new Date();
+myVar=x.toString();   //przydziela wartość myVar, podobnie do:
+// Mon Sep 28 14:36:22 GMT-0700 (Pacific Daylight Time) 1998
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/toutcstring/index.html b/files/pl/web/javascript/reference/global_objects/date/toutcstring/index.html new file mode 100644 index 0000000000..529b9bf434 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/toutcstring/index.html @@ -0,0 +1,43 @@ +--- +title: Date.prototype.toUTCString() +slug: Web/JavaScript/Referencje/Obiekty/Date/toUTCString +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/toUTCString +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Konwertuje datę na łańcuch znaków, używając do konwersji czasu uniwersalnego.

+ +

Składnia

+ +
dateObj.toUTCString()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Wartość zwracana przez toUTCString() jest sformatowanym i tylko do odczytu łańcuchem znaków, stosowanym do konwersji UTC. Wartość zwracanego formatu może być określona stosownie do platformy.

+ +

Przykłady

+ +

Przykład: Zastosowanie toUTCString()

+ +
var today = new Date();
+var UTCstring = today.toUTCString();
+// Mon, 03 Jul 2006 21:44:38 GMT
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/utc/index.html b/files/pl/web/javascript/reference/global_objects/date/utc/index.html new file mode 100644 index 0000000000..0bc3a38e6c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/utc/index.html @@ -0,0 +1,69 @@ +--- +title: Date.UTC() +slug: Web/JavaScript/Referencje/Obiekty/Date/UTC +tags: + - Date + - JavaScript + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Date/UTC +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Akceptuje te same parametry co najdłuższa forma konstruktora i zwraca liczbę milisekund w obiekcie {{jsxref("Date")}}, które upłynęły od 1 stycznia, 1970, 00:00:00, czasu uniwersalnego.

+ +

Składnia

+ +
Date.UTC(rok, miesiąc[, dzień[, godz[, min[, sek[, ms]]]]])
+ +

Parametry

+ +
+
rok 
+
Rok po 1900.
+
miesiąc 
+
Liczba całkowita pomiędzy 0 i 11 reprezentująca miesiąc.
+
dzień 
+
Liczba całkowita pomiędzy 1 i 31 reprezentująca dzień miesiąca.
+
godz 
+
Liczba całkowita pomiędzy 0 i 23 reprezentująca godziny.
+
min 
+
Liczba całkowita pomiędzy 0 i 59 reprezentująca minuty.
+
sek 
+
Liczba całkowita pomiędzy 0 i 59 reprezentująca sekundy.
+
ms 
+
Liczba całkowita pomiędzy 0 i 999 reprezentująca milisekundy.
+
+ +

Opis

+ +

UTC pobiera parametry daty oddzielone za pomocą przecinków i zwraca liczbę milisekund między 1 stycznia, 1970, 00:00:00, czasu uniwersalnego a określoną datą.

+ +

Powinno używać się pełnego zapisu roku, na przykład 1998. Jeśli określony jest rok z przedziału pomiędzy 0 a 99, metoda konwertuje go do roku w 20 wieku (1900 + rok); na przykład, jeśli określiłeś go jako 95, zostanie użyty rok 1995.

+ +

Metoda UTC różni się od konstruktora {{jsxref("Date")}} na dwa sposoby.

+ + + +

Jeśli parametr określony jest poza spodziewanym zasięgiem, metoda UTC zaktualizuje pozostałe parametry. Na przykład, jeśli użyjesz liczby 15 do określenia miesiąca, wartość parametru rok zostanie powiększona o 1 (rok + 1), a 3 zostanie użyte w parametrze miesiąc.

+ +

Ponieważ UTC jest statyczną metodą obiektu {{jsxref("Date")}}, zawsze powinno używać się jej jako Date.UTC(), niż jako metodę utworzonego obiektu {{jsxref("Date")}}.

+ +

Przykłady

+ +

Przykład: Zastosowanie Date.UTC()

+ +

Następująca instrukcja tworzy obiekt Date używający GMT (czasu uniwersalnego) zamiast czasu lokalnego:

+ +
var utcDate = new Date(Date.UTC(96, 11, 1, 0, 0, 0));
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/date/valueof/index.html b/files/pl/web/javascript/reference/global_objects/date/valueof/index.html new file mode 100644 index 0000000000..76d54c2187 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/date/valueof/index.html @@ -0,0 +1,46 @@ +--- +title: Date.prototype.valueOf() +slug: Web/JavaScript/Referencje/Obiekty/Date/valueOf +tags: + - Date + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Date/valueOf +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca prymitywną wartość obiektu Date.

+ +

Składnia

+ +
dateObj.valueOf()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Metoda valueOf zwraca wartość prymitywną obiektu {{jsxref("Date")}} jako typ danych liczbowych, czyli liczbę milisekund od północy 1 stycznia 1970 UTC.

+ +

Ta metoda jest funkcyjnie równoważna do metody {{jsxref("Date.prototype.getTime()")}}.

+ +

Ta metoda często jest nazywana wewnętrzną metodą JavaScriptu i nie jest wyraźna w kodzie.

+ +

Przykłady

+ +

Przykład: Zastosowanie valueOf()

+ +
var x = new Date(56, 6, 17);
+var myVar = x.valueOf();      // przydziela -424713600000 do myVar
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/decodeuri/index.html b/files/pl/web/javascript/reference/global_objects/decodeuri/index.html new file mode 100644 index 0000000000..f88686b8a3 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/decodeuri/index.html @@ -0,0 +1,39 @@ +--- +title: decodeURI() +slug: Web/JavaScript/Referencje/Obiekty/decodeURI +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/decodeURI +--- +
{{jsSidebar("Objects")}}
+ +

Podsumowanie

+ +

Dekoduje Jednolity Identyfikator Zasobu (URI) utworzony wcześniej przez funkcję {{jsxref("encodeURI", "encodeURI()")}} lub podobną.

+ +

Składnia

+ +
decodeURI(encodedURI)
+ +

Parametry

+ +
+
encodedURI 
+
Kompletny, odkodowany Jednolity Identyfikator Zasobu.
+
+ +

Opis

+ +

Podmienia każdą sekwencję ucieczki (ang. + escape sequence + ) w zakodowanym URI znakiem, który reprezentuje.

+ +

Nie dekoduje sekwencji, które nie mogłyby być wprowadzone przez {{jsxref("encodeURI", "encodeURI()")}}.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/decodeuricomponent/index.html b/files/pl/web/javascript/reference/global_objects/decodeuricomponent/index.html new file mode 100644 index 0000000000..a361e777d8 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/decodeuricomponent/index.html @@ -0,0 +1,41 @@ +--- +title: decodeURIComponent() +slug: Web/JavaScript/Referencje/Obiekty/decodeURIComponent +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/decodeURIComponent +--- +
+
+
{{jsSidebar("Objects")}}
+
+
+ +

Podsumowanie

+ +

Dekoduje komponent Jednolitego Identyfikatora Zasobu (URI) stworzonego przez {{jsxref("encodeURIComponent", "encodeURIComponent()")}} lub podobną.

+ +

Składnia

+ +
decodeURIComponent(encodedURI)
+ +

Parametry

+ +
+
encodedURI 
+
Odkodowany komponent Jednolitego Identyfikatora Zasobu.
+
+ +

Opis

+ +

Podmienia każdą sekwencję ucieczki (ang. + escape sequence + ) w zakodowanym komponencie URI znakiem, który ona reprezentuje.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/encodeuri/index.html b/files/pl/web/javascript/reference/global_objects/encodeuri/index.html new file mode 100644 index 0000000000..b794a414b3 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/encodeuri/index.html @@ -0,0 +1,72 @@ +--- +title: encodeURI() +slug: Web/JavaScript/Referencje/Obiekty/encodeURI +tags: + - JavaScript + - URI +translation_of: Web/JavaScript/Reference/Global_Objects/encodeURI +--- +
+
+
{{jsSidebar("Objects")}}
+
+
+ +

Podsumowanie

+ +

Koduje Jednolity Identyfikator Zasobu (URI) poprzez zamianę każdego z wystąpień pewnych znaków na jedną, dwie lub trzy sekwencje ucieczki (ang. + escape sequences + ) kodowania UTF-8 danego znaku.

+ +

Syntax

+ +
encodeURI(URI)
+ +

Parametry

+ +
+
URI 
+
Kompletny Jednolity Identyfikator Zasobu.
+
+ +

Opis

+ +

Zakłada się, iż URI jest kompletnym URI, więc nie koduje znaków zarezerwowanych, mających specjalne znaczenie w URI.

+ +

encodeURI zamienia wszystkie znaki, poza podanymi poniżej, odpowiednimi sekwencjami ucieczki.

+ + + + + + + + + + + + + + + + + + + + +
TypZawiera
Znaki zarezerwowane; , / ? : @ & = + $
Znaki nie podlegające ucieczceLitery, cyfry, - _ . ! ~ * ' ( )
+ Score + #
+ +

Zauważ, że encodeURI samo z siebie + + nie + potrafi utworzyć poprawnych żądań HTTP GET i POST, jak na przykład XMLHTTPRequest, ponieważ "&", "+", i "=" nie są kodowane, a są traktowane jako znaki specjalne w żądaniach GET i POST. Jednakże, {{jsxref("encodeURIComponent", "encodeURIComponent()")}}, koduje te znaki. Zachowania te są konsekwentnie wspomagane przez różne przeglądarki.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/encodeuricomponent/index.html b/files/pl/web/javascript/reference/global_objects/encodeuricomponent/index.html new file mode 100644 index 0000000000..577cff9840 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/encodeuricomponent/index.html @@ -0,0 +1,38 @@ +--- +title: encodeURIComponent() +slug: Web/JavaScript/Referencje/Obiekty/encodeURIComponent +tags: + - JavaScript + - URI +translation_of: Web/JavaScript/Reference/Global_Objects/encodeURIComponent +--- +
{{jsSidebar("Objects")}}
+ +

Podsumowanie

+ +

Koduje każdy komponent Jednolitego Identyfikatora Zasobu (URI) poprzez zamianę, każdego wystąpienia pewnych znaków jedną, dwoma lub trzema sekwencjami ucieczki reprezentujące kodowanie UTF-8 znaku.

+ +

Składnia

+ +
encodeURIComponent(str);
+ +

Parametry

+ +
+
str
+
Komponent Jednolitego Identyfikatora Zasobu.
+
+ +

Opis

+ +

encodeURIComponent() zamienia wszystkie znaki na sekwencje ucieczki poza znakami: alfabetycznymi, cyframi, - _ . ! ~ * ' ( )

+ +

Ze względów bezpieczeństwa, powinieneś wywoływać encodeURIComponent na każdym parametrze podanym przez użytkownika, który będzie podany jako część URI. Na przykład, użytkownik mógł wpisać "Thyme &time=again" dla zmiennej comment. Nie użycie encodeURIComponent na tej zmiennej da comment=Thyme%20&time=again. Zauważ, że znak ampersand (&) i znak równości (= ) oznaczają nową parę kluczy i wartość. Więc, zamiast wysyłać klucz comment równy Thyme &time=again, dostaniesz dwa klucze POST, jeden równy "Thyme" , a drugi (time) równy again.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/error/columnnumber/index.html b/files/pl/web/javascript/reference/global_objects/error/columnnumber/index.html new file mode 100644 index 0000000000..dbf51b3bf3 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/error/columnnumber/index.html @@ -0,0 +1,81 @@ +--- +title: Error.prototype.columnNumber +slug: Web/JavaScript/Referencje/Obiekty/Error/columnNumber +translation_of: Web/JavaScript/Reference/Global_Objects/Error/columnNumber +--- +
{{JSRef}} {{non-standard_header}}
+ +

The columnNumber property contains the column number in the line of the file that raised this error.

+ +

Examples

+ +

Using columnNumber

+ +
var e = new Error('Could not parse input');
+throw e;
+console.log(e.columnNumber) // 0
+
+ +

Specifications

+ +

Not part of any specification. Non-standard.

+ +

Browser compatibility

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/error/filename/index.html b/files/pl/web/javascript/reference/global_objects/error/filename/index.html new file mode 100644 index 0000000000..a0290eac45 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/error/filename/index.html @@ -0,0 +1,49 @@ +--- +title: Error.prototype.fileName +slug: Web/JavaScript/Referencje/Obiekty/Error/fileName +tags: + - JavaScript + - Prototyp + - Prototype + - Właściwość + - niestandardowe +translation_of: Web/JavaScript/Reference/Global_Objects/Error/fileName +--- +
{{JSRef}} {{non-standard_header}}
+ +

Właściwość fileName zawiera ścieżkę do pliku, który spowodował błąd.

+ +

Opis

+ +

Ta nieopisana w żadnym standardzie właściwość zawiera ścieżkę do pliku, który spowodował błąd. Jeśli jest wywoływana z kontekstu debuggera, jak na przykład Firefox Developer Tools, zwracana jest wartość "debugger eval code".

+ +

Przykłady

+ +

Użycie fileName

+ +
var e = new Error('Błąd przy parsowaniu wejścia');
+throw e;
+// wartość e.fileName powinna być czymś podobnym do "file:///C:/example.html"
+
+ +

Specyfikacje

+ +

Nie jest częścią żadnego standardu.

+ +

Wsparcie przeglądarek

+ +
+
+ + +

{{Compat("javascript.builtins.Error.fileName")}}

+
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/error/index.html b/files/pl/web/javascript/reference/global_objects/error/index.html new file mode 100644 index 0000000000..408b1b797b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/error/index.html @@ -0,0 +1,246 @@ +--- +title: Error +slug: Web/JavaScript/Referencje/Obiekty/Error +tags: + - Błąd + - CustomError + - Error + - JavaScript + - Obsługa błędów +translation_of: Web/JavaScript/Reference/Global_Objects/Error +--- +
{{JSRef}}
+ +
Kontruktor klasy Error tworzy obiekt błędu. Instancja klasy Error jest rzucana w momencie napotkania błędu w trakcie wykonywania programu. Klasa Error może być także używana do tworzenia własnych wyjątków. Poniżej przestawione zostaną wbudowane standardowe typy błędów.
+ +

Składnia

+ +
new Error([message[, fileName[, lineNumber]]])
+ +

Parametry

+ +
+
message
+
Opcjonalny. Opis błędu zrozumiały dla użytkownika.
+
fileName {{non-standard_inline}}
+
Opcjonalny. Wartość dla parametru fileName przy tworzeniu obiektu Error. Domyślnie to nazwa pliku zawierającego kod, który wywołał konstruktor.
+
lineNumber {{non-standard_inline}}
+
Opcjonalny. Wartość dla paramteru lineNumber przy tworzeniu obiektu Error. Domyślnie zawiera numer linijki zawirającej wywołanie konstruktora klasy Error.
+
+ +

Opis

+ +

Błędy w trakcie wykonywania programu skutkują utworzeniem i rzuceniem nowego obiektu Error.

+ +

This page documents the use of the Error object itself and its use as a constructor function. For a list of properties and methods inherited by Error instances, see {{jsxref("Error.prototype")}}.

+ + + +

Używanie jako funkcja

+ +

Gdy Error jest używany jako funkcja -- bez słowa kluczowego new, zwraca on obiekt Error. Możemy więc zauważyć, że zwykłe wywołanie Error zwróci nam to samo co stworznie nowego obiektu Error przy pomocy słowa kluczowego new.

+ +
// to:
+const x = Error('Jestem stworzony przy pomocy wyowałania funkcji!');
+​​​​// działa tak samo jak to:
+const y = new Error('Jestem stworzony przy pomocy słowa kluczowego "new"!');
+ + + +

Typy błędów

+ +

Oprócz konstruktora generycznego Error, mamy jeszcze siedem innych podstawowych konstruktorów błędów w JavaScript. Dla wyjątów po stronie klienta zobacz Exception Handling Statements.

+ +
+
{{jsxref("EvalError")}}
+
Tworzy instancje reprezentującą błąd dotyczący globalnej funkcji {{jsxref("Global_Objects/eval", "eval()")}}.
+
{{jsxref("InternalError")}} {{non-standard_inline}}
+
Tworzy instancje reprezentującą błąd, który występuje w momencie wyrzucenia wewnętrznego błędu silnika JavaScript np. "too much recursion".
+
{{jsxref("RangeError")}}
+
Tworzy instancje reprezentującą błąd, który występuje w momencie gdy zmienna numeryczna lub parametr wyjdzie poza zakres. 
+
{{jsxref("ReferenceError")}}
+
Tworzy instancje reprezentującą błąd, który występuje przy próbie odwołania do nieistniejącego zasobu.
+
{{jsxref("SyntaxError")}}
+
Tworzy instancje reprezentującą błąd składni, który występuje przy parsowaniu kodu przy pomocy {{jsxref("Global_Objects/eval", "eval()")}}.
+
{{jsxref("TypeError")}}
+
Tworzy instancję reprezentującą błąd, który występuje gdy zmienna lub parametr mają niepoprawny typ.
+
{{jsxref("URIError")}}
+
Tworzy instancję reprezentującą błąd, który występuje gdy {{jsxref("Global_Objects/encodeURI", "encodeURI()")}} i {{jsxref("Global_Objects/decodeURI", "decodeURI()")}} mają przekazane nieprawidłowe parametry.
+
+ +

Właściwości

+ +
+
{{jsxref("Error.prototype")}}
+
Pozwala na dodawanie właściwości do instancji klasy Error.
+
+ +

Metody

+ +

Globalny obiekt Error sam w sobie nie zawiera metod, niemniej, dziedziczy on niektóre metody z łańcucha prototypów.

+ +

Error instancje

+ +
{{page('pl/docs/Web/JavaScript/Referencje/Obiekty/Error/prototype', 'Description')}}
+ +

Właściwości

+ +
{{page('pl/docs/Web/JavaScript/Referencje/Obiekty/Error/prototype', 'Properties')}}
+ +

Metody

+ +
{{page('pl/docs/Web/JavaScript/Referencje/Obiekty/Error/prototype', 'Methods')}}
+ +

Przykłady

+ +

Rzucanie ogólnego błędu

+ +

Zazwyczaj tworzysz obiekt Error w celu wywołania go przy użyciu słowa kluczowego {{jsxref("Statements/throw", "throw")}}. Możesz obsłużyć tak rzucony błąd przy pomocy konstrukcji {{jsxref("Statements/try...catch", "try...catch")}}:

+ +
try {
+  throw new Error('Whoops!');
+} catch (e) {
+  alert(e.name + ': ' + e.message);
+}
+
+ +

Obsługa specyficznych błędów

+ +

Jeżeli chcesz możesz obsługiwać tylko specyficzny rodzaj błędu poprzez użycie właściwości jego {{jsxref("Object.prototype.constructor", "constructor")}} lub, jeżeli używasz nowoczesnego silnika JavaScript, poprzez słowo kluczowe {{jsxref("Operators/instanceof", "instanceof")}}:

+ +
try {
+  foo.bar();
+} catch (e) {
+  if (e instanceof EvalError) {
+    alert(e.name + ': ' + e.message);
+  } else if (e instanceof RangeError) {
+    alert(e.name + ': ' + e.message);
+  }
+  // ... etc
+}
+
+ +

Niestandardowe typy błędów

+ +

Możesz chcieć zdefiniować własny typ błędu pochodzący z klasy Error z możliwością rzucenia błędu throw new MyError() i użycia instanceof MyError w celu sprawdzenia jego rodzaju. Skutkuje to czystszym i spójniejszym kodem obsługi błędów. Zobacz "What's a good way to extend Error in JavaScript?" na StackOverflow dla dogłębniejszej analizy.

+ +

ES6 Custom Error Class

+ +
+

Babel i inne transpilatory nie potrafią poprawnie obsłużyć podanego kodu bez dodatkowej konfiguracji.

+
+ +
+

Nie które przeglądarki dodają constructor CustomError w stosie błędu kiedy używamy klas ES2015

+
+ +
class CustomError extends Error {
+  constructor(foo = 'bar', ...params) {
+    // Pass remaining arguments (including vendor specific ones) to parent constructor
+    super(...params);
+
+    // Maintains proper stack trace for where our error was thrown (only available on V8)
+    if (Error.captureStackTrace) {
+      Error.captureStackTrace(this, CustomError);
+    }
+
+    // Custom debugging information
+    this.foo = foo;
+    this.date = new Date();
+  }
+}
+
+try {
+  throw new CustomError('baz', 'bazMessage');
+} catch(e){
+  console.log(e.foo); //baz
+  console.log(e.message); //bazMessage
+  console.log(e.stack); //stacktrace
+}
+ +

ES5 Custom Error Object

+ +
+

Wszystkie przeględarki dodają konstruktor CustomError kiedy używasz konstruktora z wykorzystaniem prototype

+
+ +
function CustomError(foo, message, fileName, lineNumber) {
+  var instance = new Error(message, fileName, lineNumber);
+  instance.foo = foo;
+  Object.setPrototypeOf(instance, Object.getPrototypeOf(this));
+  if (Error.captureStackTrace) {
+    Error.captureStackTrace(instance, CustomError);
+  }
+  return instance;
+}
+
+CustomError.prototype = Object.create(Error.prototype, {
+  constructor: {
+    value: Error,
+    enumerable: false,
+    writable: true,
+    configurable: true
+  }
+});
+
+if (Object.setPrototypeOf){
+  Object.setPrototypeOf(CustomError, Error);
+} else {
+  CustomError.__proto__ = Error;
+}
+
+
+try {
+  throw new CustomError('baz', 'bazMessage');
+} catch(e){
+  console.log(e.foo); //baz
+  console.log(e.message) ;//bazMessage
+}
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES1')}}{{Spec2('ES1')}}Początkowa definicja. Zaimplementowana w JavaScript 1.1.
{{SpecName('ES5.1', '#sec-15.11', 'Error')}}{{Spec2('ES5.1')}}
{{SpecName('ES2015', '#sec-error-objects', 'Error')}}{{Spec2('ES2015')}}
{{SpecName('ESDraft', '#sec-error-objects', 'Error')}}{{Spec2('ESDraft')}}
+ +

Kompatybilność

+ +
+ + +

{{Compat("javascript.builtins.Error")}}

+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/error/linenumber/index.html b/files/pl/web/javascript/reference/global_objects/error/linenumber/index.html new file mode 100644 index 0000000000..20d725f492 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/error/linenumber/index.html @@ -0,0 +1,57 @@ +--- +title: Error.prototype.lineNumber +slug: Web/JavaScript/Referencje/Obiekty/Error/lineNumber +tags: + - JavaScript + - Prototyp + - Prototype + - Referencja + - Własność + - niestandardowe +translation_of: Web/JavaScript/Reference/Global_Objects/Error/lineNumber +--- +
{{JSRef}} {{non-standard_header}}
+ +

Właściwość lineNumber zawiera numer linii w pliku, gdzie pojawił się błąd.

+ +

Przykłady

+ +

Użycie lineNumber

+ +
var e = new Error('Błąd przy parsowaniu wejścia');
+throw e;
+console.log(e.lineNumber) // 2
+
+ +

Alternatywny przykład użycia zdarzenia error

+ +
window.addEventListener('error', function(e) {
+  console.log(e.lineNumber); // 5
+});
+var e = new Error('Błąd przy parsowaniu wejścia');
+throw e;
+
+ +

Własność lineNumber jest niestandardowa i nie posiada szerokiego wsparcia – zobacz tabelę opisującą wsparcie przeglądarek dla tej własności.

+ +

Specyfikacje

+ +

Nie jest częścią żadnego standardu.

+ +

Wsparcie przeglądarek

+ +
+
+ + +

{{Compat("javascript.builtins.Error.lineNumber")}}

+
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/error/message/index.html b/files/pl/web/javascript/reference/global_objects/error/message/index.html new file mode 100644 index 0000000000..1f3983fa6b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/error/message/index.html @@ -0,0 +1,108 @@ +--- +title: Error.prototype.message +slug: Web/JavaScript/Referencje/Obiekty/Error/message +translation_of: Web/JavaScript/Reference/Global_Objects/Error/message +--- +
{{JSRef}}
+ +

Właściwość message jest komunikatem błędu zapisanym w sposób czytelny dla czlowieka.

+ +

Opis

+ +

Właściwość zawiera krótki opis błędu, jeśli jest dostępny, lub został ustawiony. SpiderMonkey szeroko wykorzystuje właściwość message w wyjątkach. Właściwość message jest używany, wraz z właściwością {{jsxref("Error.prototype.name", "name")}} przez metodę {{jsxref("Error.prototype.toString()")}} do tworzenia tekstowej reprezentacji obiektu Error.

+ +

Domyślnie właściwość message jest pustym stringiem, ale to zachowanie może zostać nadpisane w instancji, poprzez przekazanie komunikatu jako pierwszy parametr do {{jsxref("Error", "Error constructor")}}.

+ +

Przykłady

+ +

Rzucanie ustawionego błędu

+ +
var e = new Error('Could not parse input'); // e.message is 'Could not parse input'
+throw e;
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES1')}}{{Spec2('ES1')}}Initial definition.
{{SpecName('ES5.1', '#sec-15.11.4.3', 'Error.prototype.message')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-error.prototype.message', 'Error.prototype.message')}}{{Spec2('ES6')}} 
+ +

Kompatybilność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/error/name/index.html b/files/pl/web/javascript/reference/global_objects/error/name/index.html new file mode 100644 index 0000000000..11521ec4fd --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/error/name/index.html @@ -0,0 +1,109 @@ +--- +title: Error.prototype.name +slug: Web/JavaScript/Referencje/Obiekty/Error/name +translation_of: Web/JavaScript/Reference/Global_Objects/Error/name +--- +
{{JSRef}}
+ +

Właściwość name reprezentuję nazwę danego typu błędu. Początkową wartością jest "Error".

+ +

Opis

+ +

Domyślnie, instancje {{jsxref("Error")}} mają ustawioną nazwę "Error". Właściwość name, razem z właściwością {{jsxref("Error.prototype.message", "message")}}, jest używana przez metodę  {{jsxref("Error.prototype.toString()")}} do tworzenia tekstowej reprezentacji obiektu Error.

+ +

Przykłady

+ +

Rzucanie ustawionego błędu

+ +
var e = new Error('Malformed input'); // e.name is 'Error'
+
+e.name = 'ParseError';
+throw e;
+// e.toString() would return 'ParseError: Malformed input'
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES1')}}{{Spec2('ES1')}}Initial definition.
{{SpecName('ES5.1', '#sec-15.11.4.2', 'Error.prototype.name')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-error.prototype.name', 'Error.prototype.name')}}{{Spec2('ES6')}} 
+ +

Kompatybilność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/error/stack/index.html b/files/pl/web/javascript/reference/global_objects/error/stack/index.html new file mode 100644 index 0000000000..01c2129f21 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/error/stack/index.html @@ -0,0 +1,127 @@ +--- +title: Error.prototype.stack +slug: Web/JavaScript/Referencje/Obiekty/Error/Stack +tags: + - JavaScript + - Prototyp + - Referencja + - Własność + - niestandardowe +translation_of: Web/JavaScript/Reference/Global_Objects/Error/Stack +--- +
{{JSRef}} {{non-standard_header}}
+ +

Niestandardowa własność stack obiektów {{jsxref("Error")}} podaje ścieżkę wywołań funkcji – które z nich były wywołane, w jakiej kolejności, z której linii i pliku, z jakimi argumentami. Stos wywołań zaczyna się od ostatnich wywołań, przez wcześniejsze, prowadząc do pierwotnego wywołania z zakresu globalnego.

+ +

Opis

+ +

Każdy krok będzie znajdował się w oddzielnej linii, zawierając w pierwszej części nazwę funkcji (jeśli nie jest to wywołanie z zakresu globalnego), następnie znak at (@), lokalizację pliku (z wyjątkiem sytuacji, w których funkcja jest konstruktorem zgłaszanego błędu), dwukropek oraz numer linii (jeśli zdefiniowana jest lokalizacja pliku). (Zauważ, że obiekt {{jsxref("Error")}} także posiada własności fileName, lineNumber i columnNumber, które można odczytać z danego błędu, jednak jedynie błędu, a nie jego stosu wywołań).

+ +

Należy podkreślić, że opisany wyżej format jest formatem przeglądarki Firefox – nie ma standardu formatowania, jednakże Safari 6+ i Opera 12- używają bardzo podobnego formatu. Przeglądarki używające silnika JavaScript V8 (takie jak Chrome, Opera 15+, Android Browser) oraz IE10+, używają natomiast innego formatu (zobacz archiwalną dokumentację MSDN dla error.stack).

+ +

Wartości argumentów w stosie: w wersjach wcześniejszych niż Firefox 14, po nazwie funkcji następowały wartości argumentów przekonwertowane do łańcucha znaków (string) w nawiasach, przed znakiem at (@). Podczas gdy obiekt (lub tablica itp.) pojawia się w przekonwertowanej formie "[object Object]" i nie może być przekonwertowany z powrotem do właściwych obiektów, wartości skalarne mogą być odzyskane (choć być może — w Firefoksie 14 nadal jest to możliwe — łatwiej będzie użyć arguments.callee.caller.arguments, tak jak nazwa funkcji może być uzyskana przez  arguments.callee.caller.name). "undefined" jest wylistowany jako "(void 0)". Zauważ, że jeśli argumenty typu string były przekazane z wartościami takimi jak "@", "(", ")" (lub znaki te występują w nazwach plików), nie możesz polegać po prostu na podzieleniu linii na części składowe – dlatego w Firefoksie 14 i nowszych jest to mniejszy problem.

+ +

Różne przeglądarki ustawiają tę wartość w różnych momentach. Przykładowo, Firefox ustawia ją podczas tworzenia obiektu {{jsxref("Error")}}, natomiast PhantomJS ustawia ją jedynie podczas wyrzucania {{jsxref("Error")}} – i archiwalna dokumentacja MSDN również wydaje się zgadzać z implementacją PhantomJS.

+ +

Przykłady

+ +

Użycie własności stack

+ +

Poniższy dokument HTML prezentuje użycie własności stack.

+ +
<!DOCTYPE HTML>
+<meta charset="UTF-8">
+<title>Stack Trace Example</title>
+<body>
+<script>
+function trace() {
+  try {
+    throw new Error('myError');
+  }
+  catch(e) {
+    alert(e.stack);
+  }
+}
+function b() {
+  trace();
+}
+function a() {
+  b(3, 4, '\n\n', undefined, {});
+}
+a('first call, firstarg');
+</script>
+
+ +

Zakładając, że powyższy dokument zapisany jest pod adresem C:\example.html w systemie plików Windows, kod utworzy okno typu alert z następującą treścią:

+ +

W przeglądarce Firefox 30 i późniejszych wersjach, wraz z numerem kolumny:

+ +
trace@file:///C:/example.html:9:17
+b@file:///C:/example.html:16:13
+a@file:///C:/example.html:19:13
+@file:///C:/example.html:21:9
+ +

Od Firefoxa 14 do Firefoxa 29:

+ +
trace@file:///C:/example.html:9
+b@file:///C:/example.html:16
+a@file:///C:/example.html:19
+@file:///C:/example.html:21
+ +

Firefox 13 i wcześniejsze zwróci zamiast tego następujący tekst:

+ +
Error("myError")@:0
+trace()@file:///C:/example.html:9
+b(3,4,"\n\n",(void 0),[object Object])@file:///C:/example.html:16
+a("first call, firstarg")@file:///C:/example.html:19
+@file:///C:/example.html:21
+ +

Stos ewaluowanego kodu

+ +

Od Firefoxa 30, stos błędu w wywołaniach Function() i eval() tworzy stos z bardziej szczegółową informacją o linii i kolumnie wewnątrz tych wywołań. Wywołania funkcji są wskazywane przez "> Function", a eval przez "> eval".

+ +
try {
+  new Function('throw new Error()')();
+} catch (e) {
+  console.log(e.stack);
+}
+
+// anonymous@file:///C:/example.html line 7 > Function:1:1
+// @file:///C:/example.html:7:6
+
+
+try {
+  eval("eval('FAIL')");
+} catch (x) {
+  console.log(x.stack);
+}
+
+// @file:///C:/example.html line 7 > eval line 1 > eval:1:1
+// @file:///C:/example.html line 7 > eval:1:1
+// @file:///C:/example.html:7:6
+
+ +

Możesz także użyć dyrektywy //# sourceURL do nazwania źródła eval. Zobacz też źródła Debug eval w dokumentacji Debuggera oraz w tym artykule.

+ +

Specyfikacje

+ +

Nie jest częścią żadnego standardu.

+ +

Wsparcie przeglądarek

+ +
+
+ + +

{{Compat("javascript.builtins.Error.stack")}}

+
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/error/tosource/index.html b/files/pl/web/javascript/reference/global_objects/error/tosource/index.html new file mode 100644 index 0000000000..f904d26f70 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/error/tosource/index.html @@ -0,0 +1,60 @@ +--- +title: Error.prototype.toSource() +slug: Web/JavaScript/Referencje/Obiekty/Error/toSource +tags: + - JavaScript + - Metodă + - Niestandardowy + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Error/toSource +--- +
{{JSRef}} {{non-standard_header}}
+ +

Metoda toSource() zwraca kod, który możemethod returns code that could eval to the same error.

+ +

Składnia

+ +
e.toSource()
+ +

Zwracana wartość

+ +

Łańcuch znaków (string) zawierający kod źródłowy błędu.

+ +

Przykłady

+ +

Użycie toSource

+ +

Wywołanie metody toSource instancji {{jsxref("Error")}} (w tym NativeErrors) zwróci łańcuch znaków zawierający kod źródłowy błędu. Zwrócony string może być ewaluowany do utworzenia (w przybliżeniu) takiego samego obiektu. Oczywiście ciąg znaków zawierający kod źródłowy jest zgodny ze strukturą konstruktora {{jsxref("Error")}}. Przykładowo:

+ +
(newname(message, nazwaPliku, numerLinii))
+
+ +

gdzie wymienione atrybuty odpowiadają właściwym własnościom instancji błędu.

+ +
+

Uwaga: należy pamiętać, że własności używanen przez metodę toSource podczas tworzenia tego ciągu znaków są modyfikowalne i mogą nie odzwierciedlać dokładnie funkcji użytej do stworzenia instancji błędu lub nazwy pliku czy numeru linii gdzie wystąpił dany błąd.

+
+ +

Specyfikacje

+ +

Nie należy do żadnego standardu.

+ +

Wsparcie przeglądarek

+ +
+
+ + +

{{Compat("javascript.builtins.Error.toSource")}}

+
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/error/tostring/index.html b/files/pl/web/javascript/reference/global_objects/error/tostring/index.html new file mode 100644 index 0000000000..6b019bc60b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/error/tostring/index.html @@ -0,0 +1,98 @@ +--- +title: Error.prototype.toString() +slug: Web/JavaScript/Referencje/Obiekty/Error/toString +tags: + - JavaScript + - Metodă + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Error/toString +--- +
{{JSRef}}
+ +

Metoda toString() zwraca iąg znaków reprezentujący dany obiekt {{jsxref("Error")}}.

+ +

Składnia

+ +
e.toString()
+ +

Zwracana wartość

+ +

Ciąg znaków reprezentujący dany obiekt {{jsxref("Error")}}.

+ +

Opis

+ +

Obiekt {{jsxref("Error")}} nadpisuje metodę {{jsxref("Object.prototype.toString()")}} dziedziczoną przez wszystkie obiekty. Jego semantyka jest następująca (przy założeniu, że {{jsxref("Object")}} i {{jsxref("String")}} mają swoje oryginalne wartości):

+ +
Error.prototype.toString = function() {
+  'use strict';
+
+  var obj = Object(this);
+  if (obj !== this) {
+    throw new TypeError();
+  }
+
+  var name = this.name;
+  name = (name === undefined) ? 'Error' : String(name);
+
+  var msg = this.message;
+  msg = (msg === undefined) ? '' : String(msg);
+
+  if (name === '') {
+    return msg;
+  }
+  if (msg === '') {
+    return name;
+  }
+
+  return name + ': ' + msg;
+};
+
+ +

Przykłady

+ +

Użycie toString()

+ +
var e = new Error('fatal error');
+console.log(e.toString()); // 'Error: fatal error'
+
+e.name = undefined;
+console.log(e.toString()); // 'Error: fatal error'
+
+e.name = '';
+console.log(e.toString()); // 'fatal error'
+
+e.message = undefined;
+console.log(e.toString()); // ''
+
+e.name = 'hello';
+console.log(e.toString()); // 'hello'
+
+ +

Specyfikacje

+ + + + + + + + + + + + +
Specyfikacja
{{SpecName('ESDraft', '#sec-error.prototype.tostring', 'Error.prototype.toString')}}
+ +

Wsparcie przeglądarek

+ +
+ + +

{{Compat("javascript.builtins.Error.toString")}}

+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/escape/index.html b/files/pl/web/javascript/reference/global_objects/escape/index.html new file mode 100644 index 0000000000..06d1d3d2c4 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/escape/index.html @@ -0,0 +1,120 @@ +--- +title: escape() +slug: Web/JavaScript/Referencje/Obiekty/escape +translation_of: Web/JavaScript/Reference/Global_Objects/escape +--- +
{{jsSidebar("Objects")}}
+ +

The deprecated escape() function computes a new string in which certain characters have been replaced by a hexadecimal escape sequence. Use {{jsxref("encodeURI")}} or {{jsxref("encodeURIComponent")}} instead.

+ +

Składnia

+ +
escape(str)
+ +

Parametry

+ +
+
str
+
A string to be encoded.
+
+ +

Description

+ +

The escape function is a property of the global object. Special characters are encoded with the exception of: @*_+-./

+ +

The hexadecimal form for characters, whose code unit value is 0xFF or less, is a two-digit escape sequence: %xx. For characters with a greater code unit, the four-digit format %uxxxx is used.

+ +

Przykłady

+ +
escape("abc123");     // "abc123"
+escape("äöü");        // "%E4%F6%FC"
+escape("ć");          // "%u0107"
+
+// znaki specjalne
+escape("@*_+-./");    // "@*_+-./"
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES1')}}{{Spec2('ES1')}}Initial definition.
{{SpecName('ES5.1', '#sec-B.2.1', 'escape')}}{{Spec2('ES5.1')}}Defined in the (informative) Compatibility Annex B
{{SpecName('ES6', '#sec-escape-string', 'escape')}}{{Spec2('ES6')}}Defined in the (normative) Annex B for Additional ECMAScript Features for Web Browsers
+ +

Browser compatibility

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/evalerror/index.html b/files/pl/web/javascript/reference/global_objects/evalerror/index.html new file mode 100644 index 0000000000..6fd39a8789 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/evalerror/index.html @@ -0,0 +1,87 @@ +--- +title: EvalError +slug: Web/JavaScript/Referencje/Obiekty/EvalError +tags: + - EvalError + - JavaScript + - Klasa + - Obiekt + - Referencja +translation_of: Web/JavaScript/Reference/Global_Objects/EvalError +--- +
{{JSRef}}
+ +

Obiekt EvalError wskazuje na błąd dotyczący globalnej funkcji {{jsxref("Global_Objects/eval", "eval()")}}. Ten wyjątek nie jest już wywoływany przez JavaScript, jednak obiekt EvalError został zachowany ze względu na kompatybilność wsteczną.

+ +

Konstruktor

+ +
+
EvalError()
+
Tworzy nowy obiekt EvalError.
+
+ +

Własności instancji

+ +
+
{{jsxref("Error.prototype.message", "EvalError.prototype.message")}}
+
Treść błędu. Choć ECMA-262 określa, że {{jsxref("EvalError")}} powinien mieć swoją własną wartość message, w SpiderMonkey jest ona dziedziczona z {{jsxref("Error.prototype.message")}}.
+
{{jsxref("Error.prototype.name", "EvalError.prototype.name")}}
+
Nazwa błędu. Dziedziczone z {{jsxref("Error")}}.
+
{{jsxref("Error.prototype.fileName", "EvalError.prototype.fileName")}}
+
Ścieżka do pliku, w którym został wywołany błąd. Dziedziczone z {{jsxref("Error")}}.
+
{{jsxref("Error.prototype.lineNumber", "EvalError.prototype.lineNumber")}}
+
Numer linii w pliku, gdzie został wywołany błąd. Dziedziczone z {{jsxref("Error")}}.
+
{{jsxref("Error.prototype.columnNumber", "EvalError.prototype.columnNumber")}}
+
Kolumna w linii, gdzie został wywołany błąd. Dziedziczone z {{jsxref("Error")}}.
+
{{jsxref("Error.prototype.stack", "EvalError.prototype.stack")}}
+
Stos wywołań. Dziedziczone z {{jsxref("Error")}}.
+
+ +

Przykłady

+ +

EvalError nie jest używany w obecnej specyfikacji ECMAScript, zatem nie będzie wywoływany podczas wykonania programu – jednakże sam obiekt został zachowany ze względu na wsteczną kompatybilność z wcześniejszymi wersjami specyfikacji.

+ +

Tworzenie EvalError

+ +
try {
+  throw new EvalError('Hello', 'someFile.js', 10);
+} catch (e) {
+  console.log(e instanceof EvalError); // true
+  console.log(e.message);              // "Hello"
+  console.log(e.name);                 // "EvalError"
+  console.log(e.fileName);             // "someFile.js"
+  console.log(e.lineNumber);           // 10
+  console.log(e.columnNumber);         // 0
+  console.log(e.stack);                // "@Scratchpad/2:2:9\n"
+}
+
+ +

Specyfikacje

+ + + + + + + + + + +
Specyfikacja
{{SpecName('ESDraft', '#sec-native-error-types-used-in-this-standard-evalerror', 'EvalError')}}
+ +

Wsparcie przeglądarek

+ +
+
+ + +

{{Compat("javascript.builtins.EvalError")}}

+
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/function/apply/index.html b/files/pl/web/javascript/reference/global_objects/function/apply/index.html new file mode 100644 index 0000000000..411b47423a --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/function/apply/index.html @@ -0,0 +1,289 @@ +--- +title: Function.prototype.apply() +slug: Web/JavaScript/Referencje/Obiekty/Function/apply +translation_of: Web/JavaScript/Reference/Global_Objects/Function/apply +--- +
{{JSRef}}
+ +

Metoda apply() wywołuje daną funkcję podstawiając daną wartość this i argumenty przedstawione w postaci tablicy (lub obiektu tablicopodobnego (array-like object)).

+ +
+

Notka: Składnia tej funkcji jest niemal identyczna do {{jsxref("Function.call", "call()")}}, podstawową różnicą jest to, iż call() przyjmuje listę argumentów, podczas gdy apply() akceptuje pojedynczą tablicę argumentów.

+
+ +

Składnia

+ +
function.apply(thisArg, [argsArray])
+ +

Parametry

+ +
+
thisArg
+
Optional. The value of this provided for the call to func. Note that this may not be the actual value seen by the method: if the method is a function in {{jsxref("Strict_mode", "non-strict mode", "", 1)}} code, {{jsxref("null")}} and {{jsxref("undefined")}} will be replaced with the global object, and primitive values will be boxed.
+
argsArray
+
Optional. An array-like object, specifying the arguments with which fun should be called, or {{jsxref("null")}} or {{jsxref("undefined")}} if no arguments should be provided to the function. Starting with ECMAScript 5 these arguments can be a generic array-like object instead of an array. See below for {{anch("Browser_compatibility", "browser compatibility")}} information.
+
+ +

Zwracana wartość

+ +

Wynik wywoływanej funkcji z określoną wartością this i argumentami.

+ +

Opis

+ +

Można przypisać inny obiekt this podczas wywoływania istniejącej funkcji. this odnosi się do bieżącego obiektu, obiektu wywołującego. Z apply można napisać metodę raz, a następnie dziedziczyć w innym obiekcie, bez konieczności przepisywania metody dla nowego obiektu.

+ +

apply jest bardzo podobne do {{jsxref("Function.call", "call()")}}, z wyjątkiem typu danych argumentów, które wspiera. Można używać tablicy argumentów zamiast zestawu argumentów (parametrów). Z metodą apply, możesz używać tablic w sensie dosłownym, na przykład func.apply(this, ['eat', 'bananas']), lub obiektów typu {{jsxref("Array")}}, na przykład, func.apply(this, new Array('eat', 'bananas')).

+ +

Można używać również {{jsxref("Funkcje/arguments", "arguments")}} dla parametru argsArray. arguments jest zmienną lokalną dostępną wewnątrz każdej funkcji. Można to zastosować do wszystkich nieokreślonych argumentów wywoływanego obiektu. Tak więc nie trzeba znać argumentów wywoływanego obiektu przy użyciu metody apply Możesz użyć arguments, aby przekazać wszystkie argumenty do wywoływanego obiektu. Wywołany obiekt jest odpowiedzialny za obsługę otrzymanych argumentów.

+ +

Od ECMAScript 5th Edition możliwe jest również używanie wszelkiego rodzaju obiektów „tablicopodobnych” (array-like), co w praktyce oznacza, że obiekt taki musi mieć własność length i całkowite własności (indeksy) w zakresie (0..length-1). Przykładowo możesz użyć {{domxref("NodeList")}} lub własnego oiektu jak np. { 'length': 2, '0': 'eat', '1': 'bananas' }.

+ +
+

Większość przeglądarek, w tym Chrome 14 i Internet Explorer 9, w dalszym ciągu nie akceptuje obiektów tablicopodobnych i będzie wyrzucać wyjątek.

+
+ +

Przykłady

+ +

Użycie apply do dodania tablicy do innej tablicy

+ +

Możemy użyć metody push do dodania elementu do tablicy. I, jako że push przyjmuje zmienną liczbę argumentów, możemy również dodać wiele elementów naraz – ale jeśli faktycznie przekażemy tablicę do funkcji push, wówczas rzeczywiście doda ona tablicę jako pojedynczy element, zamiast dodać jej elementy, więc skończymy z tablicą wewnątrz tablicy. Co jeśli to nie jest to, co chcieliśmy osiągnąć? concat ma zachowanie takie, jakiego oczekiwalibyśmy w tym przypadku, jednak funkcja ta nie dodaje w rzeczywistości tablicy do istniejącej tablicy, ale tworzy i zwraca nową. Ale chcieliśmy zmodyfikować naszą istniejącą tablicę… Więc co teraz? Napisać pętlę? No chyba nie?

+ +

apply przychodzi na ratunek!

+ +
var array = ['a', 'b'];
+var elements = [0, 1, 2];
+array.push.apply(array, elements);
+console.info(array); // ["a", "b", 0, 1, 2]
+
+ +

 

+ +

Using apply and built-in functions

+ +

 

+ +

Clever usage of apply allows you to use built-ins functions for some tasks, that otherwise probably would have been written by looping over the array values. As an example here we are going to use Math.max/Math.min, to find out the maximum/minimum value in an array.

+ +
// min/max number in an array
+var numbers = [5, 6, 2, 3, 7];
+
+// using Math.min/Math.max apply
+var max = Math.max.apply(null, numbers);
+// This about equal to Math.max(numbers[0], ...)
+// or Math.max(5, 6, ...)
+
+var min = Math.min.apply(null, numbers);
+
+// vs. simple loop based algorithm
+max = -Infinity, min = +Infinity;
+
+for (var i = 0; i < numbers.length; i++) {
+  if (numbers[i] > max) {
+    max = numbers[i];
+  }
+  if (numbers[i] < min) {
+    min = numbers[i];
+  }
+}
+
+ +

But beware: in using apply this way, you run the risk of exceeding the JavaScript engine's argument length limit. The consequences of applying a function with too many arguments (think more than tens of thousands of arguments) vary across engines (JavaScriptCore has hard-coded argument limit of 65536), because the limit (indeed even the nature of any excessively-large-stack behavior) is unspecified. Some engines will throw an exception. More perniciously, others will arbitrarily limit the number of arguments actually passed to the applied function. To illustrate this latter case: if such an engine had a limit of four arguments (actual limits are of course significantly higher), it would be as if the arguments 5, 6, 2, 3 had been passed to apply in the examples above, rather than the full array.

+ +

If your value array might grow into the tens of thousands, use a hybrid strategy: apply your function to chunks of the array at a time:

+ +
function minOfArray(arr) {
+  var min = Infinity;
+  var QUANTUM = 32768;
+
+  for (var i = 0, len = arr.length; i < len; i += QUANTUM) {
+    var submin = Math.min.apply(null,
+                                arr.slice(i, Math.min(i+QUANTUM, len)));
+    min = Math.min(submin, min);
+  }
+
+  return min;
+}
+
+var min = minOfArray([5, 6, 2, 3, 7]);
+
+ +

 

+ +

Using apply to chain constructors

+ +

 

+ +

You can use apply to chain {{jsxref("Operators/new", "constructors", "", 1)}} for an object, similar to Java. In the following example we will create a global {{jsxref("Function")}} method called construct, which will enable you to use an array-like object with a constructor instead of an arguments list.

+ +
Function.prototype.construct = function(aArgs) {
+  var oNew = Object.create(this.prototype);
+  this.apply(oNew, aArgs);
+  return oNew;
+};
+
+ +
+

Note: The Object.create() method used above is relatively new. For alternative methods, please consider one of the following approaches:

+ +

Using {{jsxref("Object/__proto__", "Object.__proto__")}}:

+ +
Function.prototype.construct = function (aArgs) {
+  var oNew = {};
+  oNew.__proto__ = this.prototype;
+  this.apply(oNew, aArgs);
+  return oNew;
+};
+
+ +

Using closures:

+ +
Function.prototype.construct = function(aArgs) {
+  var fConstructor = this, fNewConstr = function() {
+    fConstructor.apply(this, aArgs);
+  };
+  fNewConstr.prototype = fConstructor.prototype;
+  return new fNewConstr();
+};
+ +

Using the {{jsxref("Function")}} constructor:

+ +
Function.prototype.construct = function (aArgs) {
+  var fNewConstr = new Function("");
+  fNewConstr.prototype = this.prototype;
+  var oNew = new fNewConstr();
+  this.apply(oNew, aArgs);
+  return oNew;
+};
+
+
+ +

Example usage:

+ +
function MyConstructor() {
+  for (var nProp = 0; nProp < arguments.length; nProp++) {
+    this['property' + nProp] = arguments[nProp];
+  }
+}
+
+var myArray = [4, 'Hello world!', false];
+var myInstance = MyConstructor.construct(myArray);
+
+console.log(myInstance.property1);                // logs 'Hello world!'
+console.log(myInstance instanceof MyConstructor); // logs 'true'
+console.log(myInstance.constructor);              // logs 'MyConstructor'
+
+ +
+

Note: This non-native Function.construct method will not work with some native constructors; like {{jsxref("Date")}}, for example. In these cases you have to use the {{jsxref("Function.prototype.bind")}} method. For example, imagine having an array like the following, to be used with {{jsxref("Global_Objects/Date", "Date")}} constructor: [2012, 11, 4]; in this case you have to write something like: new (Function.prototype.bind.apply(Date, [null].concat([2012, 11, 4])))(). This is not the best way to do things, and probably not to be used in any production environment.

+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES3')}}{{Spec2('ES3')}}Initial definition. Implemented in JavaScript 1.3.
{{SpecName('ES5.1', '#sec-15.3.4.3', 'Function.prototype.apply')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-function.prototype.apply', 'Function.prototype.apply')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-function.prototype.apply', 'Function.prototype.apply')}}{{Spec2('ESDraft')}} 
+ +

Zgodność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
ES 5.1 generic array-like object as {{jsxref("Functions/arguments", "arguments")}}{{CompatVersionUnknown}}{{CompatGeckoDesktop("2.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
ES 5.1 generic array-like object as {{jsxref("Functions/arguments", "arguments")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatGeckoMobile("2.0")}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/function/arguments/index.html b/files/pl/web/javascript/reference/global_objects/function/arguments/index.html new file mode 100644 index 0000000000..abbb63eef4 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/function/arguments/index.html @@ -0,0 +1,41 @@ +--- +title: Function.arguments +slug: Web/JavaScript/Referencje/Obiekty/Function/arguments +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Function/arguments +--- +

{{JSRef}}{{ Deprecated_header() }}

+ +

Podsumowanie

+ +

Obiekt tablicopodobny odpowiadający argumentom przekazywanym funkcji.

+ +

Opis

+ +

Należy użyć obiektu arguments dostępnego wewnątrz funkcji zamiast Function.arguments.

+ +

W przypadku rekurencji, tzn. jeśli funkcja f pojawia się kilkakrotnie na stosie wywołania, wartość of f.arguments reprezentuje argumenty odpowiadające ostatniemu wywołaniu funkcji.

+ +

Przykład

+ +
function f(n) { g(n-1) }
+
+function g(n) {
+  console.log("przed: " + g.arguments[0]);
+  if(n>0) { f(n); }
+  console.log("po: " + g.arguments[0]);
+}
+f(2);
+
+ +

wyświetli:

+ +
przed: 1
+przed: 0
+po: 0
+po: 1
+
diff --git a/files/pl/web/javascript/reference/global_objects/function/bind/index.html b/files/pl/web/javascript/reference/global_objects/function/bind/index.html new file mode 100644 index 0000000000..028db6b6d4 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/function/bind/index.html @@ -0,0 +1,332 @@ +--- +title: Function.prototype.bind() +slug: Web/JavaScript/Referencje/Obiekty/Function/bind +translation_of: Web/JavaScript/Reference/Global_Objects/Function/bind +--- +
{{JSRef}}
+Metoda bind() tworzy nową funkcję, której wywołanie powoduje ustawienie this na podaną wartość, z podaną sekwencją argumentów poprzedzającą dowolną podaną podczas wywołania nowej funkcji.
+ +
{{EmbedInteractiveExample („pages / js / function-bind.html”, „taller”)}}
+Źródło tego interaktywnego przykładu jest przechowywane w repozytorium GitHub. Jeśli chcesz przyczynić się do projektu interaktywnych przykładów, sklonuj https://github.com/mdn/interactive-examples i wyślij nam prośbę o pobranie.
+ +

Syntax

+ +
let boundFunc = func.bind(thisAtr[, arg1[, arg2[, ...argN]]])
+
+ +

Parametry

+ +
+
thisAtr
+
Wartość, która ma być przekazana jako this do funkcji docelowej func po wywołaniu funkcji powiązanej. Wartość jest ignorowana, jeśli funkcja powiązana jest konstruowana przy użyciu operatora {{jsxref („Operators / new”, „new”)}}. Podczas używania funkcji bind do utworzenia funkcji (dostarczonej jako wywołanie zwrotne) wewnątrz setTimeout, każda prymitywna wartość przekazywana, gdy thisAtr jest konwertowany na obiekt. Jeśli nie podano żadnych argumentów, aby powiązać (bind), lub jeśli thisArg jest null lub undefined, this z zakresu wykonania jest traktowany jako thisAtr dla nowej funkcji.
+
arg1, arg2, ...argN {{optional_inline}}
+
Argumenty poprzedzające argumenty dostarczone funkcji powiązanej podczas wywoływania func.
+
+ +

Zwracana wartość

+ +

Kopia podanej funkcji z podaną tą wartością i początkowymi argumentami (jeśli podano).

+ +

Opis

+ +

Funkcja bind() tworzy nową funkcję wiązania (bound function), która jest exotic function object (termin z ECMAScript 2015), który zawija oryginalny obiekt funkcji. Wywołanie funkcji powiązanej zazwyczaj skutkuje wykonaniem jej owrapowanej funkcji.

+ +

Funckja wiązania (bound function) ma następujące właściwości wewnętrzne:

+ +
+
[[BoundTargetFunction]]
+
The wrapped function object
+
[[BoundThis]]
+
The value that is always passed as this value when calling the wrapped function.
+
[[BoundArguments]]
+
A list of values whose elements are used as the first arguments to any call to the wrapped function.
+
[[Call]]
+
Executes code associated with this object. Invoked via a function call expression. The arguments to the internal method are a this value and a list containing the arguments passed to the function by a call expression.
+
+ +

When a bound function is called, it calls internal method [[Call]] on [[BoundTargetFunction]], with following arguments Call(boundThis, ...args). Where boundThis is [[BoundThis]], args is [[BoundArguments]], followed by the arguments passed by the function call.

+ +

A bound function may also be constructed using the {{jsxref("Operators/new", "new")}} operator. Doing so acts as though the target function had instead been constructed. The provided this value is ignored, while prepended arguments are provided to the emulated function.

+ +

Examples

+ +

Creating a bound function

+ +

The simplest use of bind() is to make a function that, no matter how it is called, is called with a particular this value.

+ +

A common mistake for new JavaScript programmers is to extract a method from an object, then to later call that function and expect it to use the original object as its this (e.g., by using the method in callback-based code).

+ +

Without special care, however, the original object is usually lost. Creating a bound function from the function, using the original object, neatly solves this problem:

+ +
this.x = 9;    // 'this' refers to global 'window' object here in a browser
+const module = {
+  x: 81,
+  getX: function() { return this.x; }
+};
+
+module.getX();
+//  returns 81
+
+const retrieveX = module.getX;
+retrieveX();
+//  returns 9; the function gets invoked at the global scope
+
+//  Create a new function with 'this' bound to module
+//  New programmers might confuse the
+//  global variable 'x' with module's property 'x'
+const boundGetX = retrieveX.bind(module);
+boundGetX();
+//  returns 81
+
+ +

Funkcje częściowo zastosowane
+ Kolejnym najprostszym zastosowaniem bind () jest utworzenie funkcji z wcześniej określonymi argumentami początkowymi.

+ +

Argumenty te (jeśli występują) są zgodne z podaną wartością, a następnie są wstawiane na początku argumentów przekazywanych do funkcji docelowej, a następnie wszelkie argumenty przekazywane funkcja powiązana w momencie jej wywołania.

+ +
function list() {
+  return Array.prototype.slice.call(arguments);
+}
+
+function addArguments(arg1, arg2) {
+  return arg1 + arg2
+}
+
+const list1 = list(1, 2, 3);
+//  [1, 2, 3]
+
+const result1 = addArguments(1, 2);
+//  3
+
+// Create a function with a preset leading argument
+const leadingThirtysevenList = list.bind(null, 37);
+
+// Create a function with a preset first argument.
+const addThirtySeven = addArguments.bind(null, 37);
+
+const list2 = leadingThirtysevenList();
+//  [37]
+
+const list3 = leadingThirtysevenList(1, 2, 3);
+//  [37, 1, 2, 3]
+
+const result2 = addThirtySeven(5);
+//  37 + 5 = 42
+
+const result3 = addThirtySeven(5, 10);
+//  37 + 5 = 42
+//  (the second argument is ignored)
+
+
+
+ +

With setTimeout()

+ +

By default within window.setTimeout(), the this keyword will be set to the window (or global) object. When working with class methods that require this to refer to class instances, you may explicitly bind this to the callback function, in order to maintain the instance.

+ +
function LateBloomer() {
+  this.petalCount = Math.floor(Math.random() * 12) + 1;
+}
+
+// Declare bloom after a delay of 1 second
+LateBloomer.prototype.bloom = function() {
+  window.setTimeout(this.declare.bind(this), 1000);
+};
+
+LateBloomer.prototype.declare = function() {
+  console.log(`I am a beautiful flower with ${this.petalCount} petals!`);
+};
+
+const flower = new LateBloomer();
+flower.bloom();
+//  after 1 second, calls 'flower.declare()'
+
+ +

Funkcje powiązane używane jako kostruktory

+ +
+

Ostrzeżenie: ta sekcja pokazuje możliwości JavaScript i dokumentuje niektóre przypadki krawędzi metody bind ().

+ +

Metody przedstawione poniżej nie są najlepszym sposobem na robienie rzeczy i prawdopodobnie nie powinny być stosowane w żadnym środowisku produkcyjnym.

+
+ +

Funkcje powiązane są automatycznie odpowiednie do użycia z operatorem {{jsxref („Operators / new”, „new”)}} do tworzenia nowych instancji utworzonych przez funkcję docelową. Gdy do utworzenia wartości używana jest funkcja powiązana, pod warunkiem, że jest to ignorowane.

+ +

Jednak pod warunkiem, że argumenty są nadal dołączane do wywołania konstruktora:

+ +
function Point(x, y) {
+  this.x = x;
+  this.y = y;
+}
+
+Point.prototype.toString = function() {
+  return `${this.x},${this.y}`;
+};
+
+const p = new Point(1, 2);
+p.toString();
+// '1,2'
+
+
+//  not supported in the polyfill below,
+
+//  works fine with native bind:
+
+const YAxisPoint = Point.bind(null, 0/*x*/);
+
+
+const emptyObj = {};
+const YAxisPoint = Point.bind(emptyObj, 0/*x*/);
+
+const axisPoint = new YAxisPoint(5);
+axisPoint.toString();                    // '0,5'
+
+axisPoint instanceof Point;              // true
+axisPoint instanceof YAxisPoint;         // true
+new YAxisPoint(17, 42) instanceof Point; // true
+
+ +

Zauważ, że nie musisz robić nic specjalnego, aby utworzyć powiązaną funkcję do użycia z {{jsxref („Operators / new”, „new”)}}.

+ +

Następstwem jest to, że nie musisz robić nic specjalnego, aby utworzyć funkcję powiązaną, która będzie wywoływana w sposób jawny, nawet jeśli wolisz, aby funkcja powiązana była wywoływana tylko za pomocą {{jsxref („Operators / new”, „new”)}} .

+ +
//  Example can be run directly in your JavaScript console
+//  ...continued from above
+
+//  Can still be called as a normal function
+//  (although usually this is undesired)
+YAxisPoint(13);
+
+`${emptyObj.x},${emptyObj.y}`;
+// >  '0,13'
+
+ +

If you wish to support the use of a bound function only using {{jsxref("Operators/new", "new")}}, or only by calling it, the target function must enforce that restriction.

+ +

Tworzenie skrótów

+ +

bind () jest również pomocny w przypadkach, w których chcesz utworzyć skrót do funkcji, która wymaga podania tej wartości.

+ +

Weźmy na przykład {{jsxref ("Array.prototype.slice ()")}}, którego chcesz użyć do konwersji obiektu podobnego do tablicy na prawdziwą tablicę. Możesz utworzyć taki skrót:

+ +
const slice = Array.prototype.slice;
+
+// ...
+
+slice.apply(arguments);
+
+ +

Za pomocą bind () można to uprościć.

+ +

W poniższym fragmencie kodu slice () jest funkcją powiązaną z funkcją {{jsxref („Function.prototype.apply ()”, „Apply ()”)}} z {{jsxref („Function.prototype”) }}, z tą wartością ustawioną na {{jsxref („Array.prototype.slice ()”, „slice ()”)}} funkcji {{jsxref („Array.prototype”)}}. Oznacza to, że dodatkowe wywołania apply () można wyeliminować:

+ +
//  same as "slice" in the previous example
+const unboundSlice = Array.prototype.slice;
+const slice = Function.prototype.apply.bind(unboundSlice);
+
+// ...
+
+slice(arguments);
+
+ +

Polyfill
+ Ponieważ starsze przeglądarki są na ogół również wolniejszymi przeglądarkami, jest to o wiele bardziej krytyczne niż większość ludzi rozpoznaje tworzenie polifillów wydajności, aby przeglądanie w przestarzałych przeglądarkach było nieco mniej straszne.

+ +

W związku z tym poniżej przedstawiono dwie opcje dla funkcji wypełniania funkcji Function.prototype.bind ():

+ +

Pierwszy jest znacznie mniejszy i bardziej wydajny, ale nie działa, gdy używasz nowego operatora.
+ Drugi jest większy i mniej wydajny, ale pozwala na pewne użycie nowego operatora na powiązanych funkcjach.
+ Zasadniczo w większości kodów bardzo rzadko widuje się nowe używane w funkcji powiązanej, więc najlepiej jest wybrać pierwszą opcję.

+ +
//  Does not work with `new funcA.bind(thisArg, args)`
+if (!Function.prototype.bind) (function(){
+  var slice = Array.prototype.slice;
+  Function.prototype.bind = function() {
+    var thatFunc = this, thatArg = arguments[0];
+    var args = slice.call(arguments, 1);
+    if (typeof thatFunc !== 'function') {
+      // closest thing possible to the ECMAScript 5
+      // internal IsCallable function
+      throw new TypeError('Function.prototype.bind - ' +
+             'what is trying to be bound is not callable');
+    }
+    return function(){
+      var funcArgs = args.concat(slice.call(arguments))
+      return thatFunc.apply(thatArg, funcArgs);
+    };
+  };
+})();
+ +

Możesz częściowo obejść ten problem, wstawiając następujący kod na początku skryptów, umożliwiając korzystanie z większości funkcji bind () w implementacjach, które nie obsługują go natywnie.

+ +
//  Yes, it does work with `new funcA.bind(thisArg, args)`
+if (!Function.prototype.bind) (function(){
+  var ArrayPrototypeSlice = Array.prototype.slice;
+  Function.prototype.bind = function(otherThis) {
+    if (typeof this !== 'function') {
+      // closest thing possible to the ECMAScript 5
+      // internal IsCallable function
+      throw new TypeError('Function.prototype.bind - what is trying to be bound is not callable');
+    }
+
+    var baseArgs= ArrayPrototypeSlice .call(arguments, 1),
+        baseArgsLength = baseArgs.length,
+        fToBind = this,
+        fNOP    = function() {},
+        fBound  = function() {
+          baseArgs.length = baseArgsLength; // reset to default base arguments
+          baseArgs.push.apply(baseArgs, arguments);
+          return fToBind.apply(
+                 fNOP.prototype.isPrototypeOf(this) ? this : otherThis, baseArgs
+          );
+        };
+
+    if (this.prototype) {
+      // Function.prototype doesn't have a prototype property
+      fNOP.prototype = this.prototype;
+    }
+    fBound.prototype = new fNOP();
+
+    return fBound;
+  };
+})();
+
+ +

Niektóre z wielu różnic (mogą być też inne, ponieważ ta lista nie próbuje być wyczerpująca) między tym algorytmem a określonym algorytmem to:

+ +

Częściowa implementacja opiera się na {{jsxref ("Array.prototype.slice ()")}}, {{jsxref ("Array.prototype.concat ()")}}, {{jsxref ("Function.prototype.call ( ) ")}} i {{jsxref (" Function.prototype.apply () ")}}, wbudowane metody mające swoje oryginalne wartości.
+ Częściowa implementacja tworzy funkcje, które nie mają niezmiennej „pigułki trucizny” {{jsxref („Function.caller”, „caller”)}} i właściwości argumentów, które wyrzucają {{jsxref („Global_Objects / TypeError”, „TypeError”) }} przy pobieraniu, ustawianiu lub usuwaniu. (Można to dodać, jeśli implementacja obsługuje {{jsxref („Object.defineProperty”)}} lub częściowo zaimplementowana [bez zachowania polegającego na rzucaniu przy usuwaniu], jeśli implementacja obsługuje {{jsxref („Object .__ zdefiniujGetter__”, „ __defineGetter__ ”)}} i {{jsxref („ Object .__ definiSetter__ ”,„ __defineSetter__ ”)}}).
+ Częściowa implementacja tworzy funkcje, które mają właściwość prototypu. (Właściwie powiązane funkcje nie mają żadnych.)
+ Częściowa implementacja tworzy powiązane funkcje, których właściwość {{jsxref („Function.length”, „length”)}}} nie zgadza się z właściwością nakazaną przez ECMA-262: tworzy funkcje o długości 0. Pełna implementacja - w zależności od długość funkcji docelowej i liczba wcześniej określonych argumentów - może zwrócić niezerową długość.
+ Częściowa implementacja tworzy powiązane funkcje, których właściwość {{jsxref („Function.name”, „name”)}} nie jest pochodną oryginalnej nazwy funkcji. Według ECMA-262 nazwa zwróconej funkcji powiązanej powinna być „związana” + nazwa funkcji docelowej.
+ Jeśli zdecydujesz się użyć tej częściowej implementacji, nie możesz polegać na przypadkach, w których zachowanie odbiega od ECMA-262, wydanie 5! Na szczęście te odchylenia od specyfikacji rzadko (jeśli w ogóle) pojawiają się w większości sytuacji kodowania. Jeśli nie rozumiesz żadnego z odchyleń od powyższej specyfikacji, w tym konkretnym przypadku można bezpiecznie nie martwić się o te niezgodne szczegóły odchylenia.

+ +

Jeśli jest to absolutnie konieczne, a wydajność nie stanowi problemu, znacznie wolniejsze (ale bardziej zgodne ze specyfikacją rozwiązanie) można znaleźć na stronie https://github.com/Raynos/function-bind.

+ +

Dane techniczne

+ + + + + + + + + + + + +
Specyfikacja
{{SpecName('ESDraft', '#sec-function.prototype.bind', 'Function.prototype.bind')}}
+ +
Kompatybilność z przeglądarkami
+ Tabela zgodności na tej stronie jest generowana z danych strukturalnych. Jeśli chcesz przyczynić się do danych, sprawdź https://github.com/mdn/browser-compat-data i wyślij nam żądanie ściągnięcia.
+ {{Compat ("javascript.builtins.Function.bind")}}
+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/function/caller/index.html b/files/pl/web/javascript/reference/global_objects/function/caller/index.html new file mode 100644 index 0000000000..1c86b7f92f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/function/caller/index.html @@ -0,0 +1,69 @@ +--- +title: Function.caller +slug: Web/JavaScript/Referencje/Obiekty/Function/caller +tags: + - Function + - JavaScript + - Non-standard + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Function/caller +--- +
{{JSRef}} {{non-standard_header}}
+ +

Podsumowanie

+ +

Określa funkcję, która powołuje się na aktualnie wykonywaną funkcje.

+ +

Opis

+ +

Jeśli funkcja f została wywołana przez kod najwyższego poziomu, własność f.caller ma wartość {{jsxref("null")}}, w przeciwnym przypadku jest to funkcja, która wywołała f.

+ +

Ta własność zastąpiła wycofaną własność {{jsxref("arguments.caller")}}.

+ +

Notes

+ +

Note that in case of recursion, you can't reconstruct the call stack using this property. Consider:

+ +
function f(n) { g(n-1); }
+function g(n) { if(n>0) { f(n); } else { stop(); } }
+f(2);
+
+ +

At the moment stop() is called the call stack will be:

+ +
f(2) -> g(1) -> f(1) -> g(0) -> stop()
+
+ +

The following is true:

+ +
stop.caller === g && f.caller === g && g.caller === f
+
+ +

so if you tried to get the stack trace in the stop() function like this:

+ +
var f = stop;
+var stack = "Stack trace:";
+while (f) {
+  stack += "\n" + f.name;
+  f = f.caller;
+}
+
+ +

the loop would never stop.

+ +

Przykłady

+ +

Przykład: Sprawdzenie wartości własności funkcji caller

+ +

Następujący kod sprawdza wartość własności funkcji caller.

+ +
function myFunc() {
+   if (myFunc.caller == null) {
+      return ("The function was called from the top!");
+   } else {
+      return ("This function's caller was " + myFunc.caller);
+   }
+}
+
+ +
 
diff --git a/files/pl/web/javascript/reference/global_objects/function/displayname/index.html b/files/pl/web/javascript/reference/global_objects/function/displayname/index.html new file mode 100644 index 0000000000..72c8c41257 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/function/displayname/index.html @@ -0,0 +1,119 @@ +--- +title: Function.displayName +slug: Web/JavaScript/Referencje/Obiekty/Function/displayName +translation_of: Web/JavaScript/Reference/Global_Objects/Function/displayName +--- +
{{JSRef}} {{non-standard_header}}
+ +

Właściwość function.displayName zwraca wyświetlaną nazwę funkcji.

+ +

Opis

+ +

Gdy jest zdefiniowana, wlaściwość displayName zwraca wyświetlaną nazwę funkcji:

+ +
function doSomething() {}
+
+console.log(doSomething.displayName); // "undefined"
+
+var popup = function(content) { console.log(content); };
+
+popup.displayName = 'Pokaż Popup';
+
+console.log(popup.displayName); // "Pokaż Popup"
+
+ +

Możesz zdefiniować funkcję z wyświetlaną nazwą {{jsxref("Functions", "function expression", "", 1)}}:

+ +
var object = {
+  someMethod: function() {}
+};
+
+object.someMethod.displayName = 'jakaśMetoda';
+
+console.log(object.someMethod.displayName); // logs "jakaśMetoda"
+
+try { someMethod } catch(e) { console.log(e); }
+// ReferenceError: jakaśMetoda is not defined
+
+ +

Możesz dynamicznie zmieniać displayName z funkcji:

+ +
var object = {
+  // anonymous
+  someMethod: function(value) {
+    this.displayName = 'jakaśMetoda (' + value + ')';
+  }
+};
+
+console.log(object.someMethod.displayName); // "undefined"
+
+object.someMethod('123')
+console.log(object.someMethod.displayName); // "jakaśMetoda (123)"
+
+ +

Przykłady

+ +

Zazwyczaj preferowane jest przez konsole i profilery podczas {{jsxref("Function.name", "func.name")}} aby wyświetlić nazwę funkcji.

+ +

Umieszczony w konsoli powinien wyświetlić coś w rodzaju "function Moja Funkcja()":

+ +
var a = function() {};
+a.displayName = 'Moja Funkcja';
+
+a; // "function Moja Funkcja()"
+ +

Specyfikacja

+ +

Nie jest częścią żadnej specyfikacji.

+ +

Zgodność z przeglądarką

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatUnknown}}{{CompatGeckoDesktop(13)}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
diff --git a/files/pl/web/javascript/reference/global_objects/function/index.html b/files/pl/web/javascript/reference/global_objects/function/index.html new file mode 100644 index 0000000000..2db4d33411 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/function/index.html @@ -0,0 +1,237 @@ +--- +title: Function +slug: Web/JavaScript/Referencje/Obiekty/Function +tags: + - Function + - JavaScript + - Konstruktor +translation_of: Web/JavaScript/Reference/Global_Objects/Function +--- +
{{JSRef}}
+ +

Konstruktor Function tworzy nowy obiekt Function(tworzy funkcję poprzez konstruktor). W JavaScripcie właściwie każda funkcja jest obiektem Function.

+ +

Składnia

+ +
new Function ([arg1[, arg2[, ...argN]],] functionBody)
+ +

Parametry

+ +
+
arg1, arg2, ... argN
+
Names to be used by the function as formal argument names. Each must be a string that corresponds to a valid JavaScript identifier or a list of such strings separated with a comma; for example "x", "theValue", or "a,b".
+
functionBody
+
A string containing the JavaScript statements comprising the function definition.
+
+ +

Opis

+ +

Function objects created with the Function constructor are parsed when the function is created. This is less efficient than declaring a function with a function expression or function statement and calling it within your code, because such functions are parsed with the rest of the code.

+ +

All arguments passed to the function are treated as the names of the identifiers of the parameters in the function to be created, in the order in which they are passed.

+ +
+

Note: Functions created with the Function constructor do not create closures to their creation contexts; they always are created in the global scope. When running them, they will only be able to access their own local variables and global ones, not the ones from the scope in which the Function constructor was called. This is different from using {{jsxref("Global_Objects/eval", "eval")}} with code for a function expression.

+
+ +

Wywołanie konstruktora Function jako funkcję (bez użycia operatora 'new') ma taki sam efekt jak wywołanie konstruktora(z operatorem).

+ +

Właściwości i metody Function

+ +

The global Function object has no methods or properties of its own, however, since it is a function itself it does inherit some methods and properties through the prototype chain from {{jsxref("Function.prototype")}}.

+ +

Function prototype object

+ +

Właściwości

+ +
{{page('/en-US/docs/JavaScript/Reference/Global_Objects/Function/prototype', 'Properties')}}
+ +

Metody

+ +
{{page('/en-US/docs/JavaScript/Reference/Global_Objects/Function/prototype', 'Methods')}}
+ +

Function instances

+ +

Function instances inherit methods and properties from {{jsxref("Function.prototype")}}. As with all constructors, you can change the constructor's prototype object to make changes to all Function instances.

+ +

Przykłady

+ +

Przykład: Specifying arguments with the Function constructor

+ +

Poniższy przykład tworzy obiekt Function(tworzy funkcję poprzez konstruktor), który przyjmuje dwa argumenty.

+ +
// Przykład może być uruchomiony bezpośrednio w konsoli JavaScript
+
+// Tworzy funkcję, która przyjmuje dwa argumenty i zwraca ich sumę
+var adder = new Function('a', 'b', 'return a + b');
+
+// Wywołanie funkcji
+adder(2, 6);
+// > 8
+
+ +

Argumenty "a" i "b" są formanie nazwami argumentrów, które są użyte w ciele funkcji, "return a + b".

+ +

Przykład: A recursive shortcut to massively modify the DOM

+ +

Creating functions with the Function constructor is one of the ways to dynamically create an indeterminate number of new objects with some executable code into the global scope from a function. The following example (a recursive shortcut to massively modify the DOM) is impossible without the invocation of the Function constructor for each new query if you want to avoid closures.

+ +
<!doctype html>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<title>MDN Example - a recursive shortcut to massively modify the DOM</title>
+<script type="text/javascript">
+var domQuery = (function() {
+  var aDOMFunc = [
+    Element.prototype.removeAttribute,
+    Element.prototype.setAttribute,
+    CSSStyleDeclaration.prototype.removeProperty,
+    CSSStyleDeclaration.prototype.setProperty
+  ];
+
+  function setSomething(bStyle, sProp, sVal) {
+    var bSet = Boolean(sVal), fAction = aDOMFunc[bSet | bStyle << 1],
+        aArgs = Array.prototype.slice.call(arguments, 1, bSet ? 3 : 2),
+        aNodeList = bStyle ? this.cssNodes : this.nodes;
+
+    if (bSet && bStyle) { aArgs.push(''); }
+    for (
+      var nItem = 0, nLen = this.nodes.length;
+      nItem < nLen;
+      fAction.apply(aNodeList[nItem++], aArgs)
+    );
+    this.follow = setSomething.caller;
+    return this;
+  }
+
+  function setStyles(sProp, sVal) { return setSomething.call(this, true, sProp, sVal); }
+  function setAttribs(sProp, sVal) { return setSomething.call(this, false, sProp, sVal); }
+  function getSelectors() { return this.selectors; };
+  function getNodes() { return this.nodes; };
+
+  return (function(sSelectors) {
+    var oQuery = new Function('return arguments.callee.follow.apply(arguments.callee, arguments);');
+    oQuery.selectors = sSelectors;
+    oQuery.nodes = document.querySelectorAll(sSelectors);
+    oQuery.cssNodes = Array.prototype.map.call(oQuery.nodes, function(oInlineCSS) { return oInlineCSS.style; });
+    oQuery.attributes = setAttribs;
+    oQuery.inlineStyle = setStyles;
+    oQuery.follow = getNodes;
+    oQuery.toString = getSelectors;
+    oQuery.valueOf = getNodes;
+    return oQuery;
+  });
+})();
+</script>
+</head>
+
+<body>
+
+<div class="testClass">Lorem ipsum</div>
+<p>Some text</p>
+<div class="testClass">dolor sit amet</div>
+
+<script type="text/javascript">
+domQuery('.testClass')
+  .attributes('lang', 'en')('title', 'Risus abundat in ore stultorum')
+  .inlineStyle('background-color', 'black')('color', 'white')('width', '100px')('height', '50px');
+</script>
+</body>
+
+</html>
+ +

 

+ +

Specyfikacja

+ +

 

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
ECMAScript 1st Edition.StandardInitial definition. Implemented in JavaScript 1.0.
{{SpecName('ES5.1', '#sec-15.3', 'Function')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-function-objects', 'Function')}}{{Spec2('ES6')}} 
+ +

Kompatybilność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/function/length/index.html b/files/pl/web/javascript/reference/global_objects/function/length/index.html new file mode 100644 index 0000000000..e34ecb8154 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/function/length/index.html @@ -0,0 +1,42 @@ +--- +title: Function.length +slug: Web/JavaScript/Referencje/Obiekty/Function/length +tags: + - Function + - JavaScript + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Function/length +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Określa liczbę argumentów oczekiwanych przez funkcję.

+ +

Opis

+ +

Obiekt length znajduje się na zewnątrz funkcji i określa jak wiele argumentów ma oczekiwać funkcja, i.e. liczbę oficjalnych parametrów. W przeciwieństwie do obiektu {{jsxref("arguments.length")}}, który znajduje się wewnątrz funkcji, określa liczbę argumentów faktycznie przekazywanych do funkcji.

+ +

Przykład

+ +

Przykład: Zastosowanie Function.length i arguments.length

+ +

Następujący przykład pokazuje w jaki należy zastosować Function.length i arguments.length.

+ +
function addNumbers(x, y){
+   if (arguments.length == addNumbers.length) {
+      return (x + y);
+   }
+   else
+      return 0;
+}
+
+ +

Jeśli podamy więcej niż dwa argumenty do tej funkcji, funkcja zwróci 0:

+ +
addNumbers(3,4,5)   // zwraca 0
+addNumbers(3,4)     // zwraca 7
+addNumbers(103,104) // zwraca 207
+
+ +
 
diff --git a/files/pl/web/javascript/reference/global_objects/function/tostring/index.html b/files/pl/web/javascript/reference/global_objects/function/tostring/index.html new file mode 100644 index 0000000000..2f158219b9 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/function/tostring/index.html @@ -0,0 +1,56 @@ +--- +title: Function.prototype.toString() +slug: Web/JavaScript/Referencje/Obiekty/Function/toString +tags: + - Function + - JavaScript + - Method + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Function/toString +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący kod źródłowy funkcji.

+ +

Składnia

+ +
function.toString(indentation)
+ +

Parametry

+ +
+
indentation {{non-standard_inline}} {{obsolete_inline(17)}}
+
The amount of spaces to indent the string representation of the source code. If indentation is less than or equal to -1, most unnecessary spaces are removed.
+
+ +

Opis

+ +

Obiekt {{jsxref("Function")}} przesłania metodę {{jsxref("Object.prototype.toString", "toString")}} obiektu {{jsxref("Function")}}; nie dziedziczy {{jsxref("Object.prototype.toString")}}. Dla obiektów Function, metoda toString() zwraca łańcuch znaków reprezentujący obiekt.

+ +

JavaScript wywołuje metodę toString() automatycznie, gdy {{jsxref("Function")}} jest reprezentowana jako wartość tekstowa lub kiedy Function jest odsyłana do połączenia łańcuchów znaków.

+ +

Dla obiektów {{jsxref("Function")}}, wbudowana metoda toString)= dekompiluje funkcję z powrotem do kodu JavaScript, który tę funkcję definiuje. Łańcuch znaków zawiera słowa kluczowe function, listę argumentów, nawiasy klamrowe oraz ciało funkcji.

+ +

Załóżmy na przykład, że masz poniższy kod, który definiuje obiektowy typ Dog i tworzy theDog, obiekt typu Dog:

+ +
function Dog(name, breed, color, sex) {
+   this.name = name
+   this.breed = breed
+   this.color = color
+   this.sex = sex
+}
+
+theDog = new Dog( "Gabby", "Lab", "chocolate", "girl" );
+
+ +

W dowolnej chwili, gdy Dog jest użyty w kontekście jako łańcuch znaków, JavaScript automatycznie wywołuje funkcję toString, która zwraca poniższy łańcuch znaków:

+ +
function Dog(name, breed, color, sex) { this.name = name; this.breed = breed; this.color = color; this.sex = sex; }
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/generator/index.html b/files/pl/web/javascript/reference/global_objects/generator/index.html new file mode 100644 index 0000000000..8d181f0dcc --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/generator/index.html @@ -0,0 +1,178 @@ +--- +title: Generator +slug: Web/JavaScript/Referencje/Obiekty/Generator +translation_of: Web/JavaScript/Reference/Global_Objects/Generator +--- +
{{JSRef}}
+ +

Obiekt Generator jest zwracany przez {{jsxref("Polecenia/function*", "generator function", "", 1)}} i odpowiada obu: iterable protocol i iterator protocol.

+ +

Syntax

+ +
function* gen() {
+  yield 1;
+  yield 2;
+  yield 3;
+}
+
+var g = gen(); // "Generator { }"
+ +

Methods

+ +
+
{{jsxref("Generator.prototype.next()")}}
+
Returns a value yielded by the {{jsxref("Operators/yield", "yield")}} expression.
+
{{jsxref("Generator.prototype.return()")}}
+
Returns the given value and finishes the generator.
+
{{jsxref("Generator.prototype.throw()")}}
+
Throws an error to a generator.
+
+ +

Example

+ +

An infinite iterator

+ +
function* idMaker() {
+    var index = 0;
+    while(true)
+        yield index++;
+}
+
+var gen = idMaker(); // "Generator { }"
+
+console.log(gen.next().value); // 0
+console.log(gen.next().value); // 1
+console.log(gen.next().value); // 2
+// ...
+ +

Legacy generator objects

+ +

Firefox (SpiderMonkey) also implements an earlier version of generators in JavaScript 1.7, where the star (*) in the function declaration was not necessary (you just use the yield keyword in the function body). However, legacy generators are deprecated. Do not use them; they are going to be removed ({{bug(1083482)}}).

+ +

Legacy generator methods

+ +
+
Generator.prototype.next() {{non-standard_inline}}
+
Returns a value yielded by the {{jsxref("Operatory/yield", "yield")}} expression. This corresponds to next() in the ES2015 generator object.
+
Generator.prototype.close() {{non-standard_inline}}
+
Closes the generator, so that when calling next() an {{jsxref("StopIteration")}} error will be thrown. This corresponds to the return() method in the ES2015 generator object.
+
Generator.prototype.send() {{non-standard_inline}}
+
Used to send a value to a generator. The value is returned from the {{jsxref("Operatory/yield", "yield")}} expression, and returns a value yielded by the next {{jsxref("Operatory/yield", "yield")}} expression. send(x) corresponds to next(x) in the ES2015 generator object.
+
Generator.prototype.throw() {{non-standard_inline}}
+
Throws an error to a generator. This corresponds to the throw() method in the ES2015 generator object.
+
+ +

Legacy generator example

+ +
function fibonacci() {
+  var a = yield 1;
+  yield a * 2;
+}
+
+var it = fibonacci();
+console.log(it);          // "Generator {  }"
+console.log(it.next());   // 1
+console.log(it.send(10)); // 20
+console.log(it.close());  // undefined
+console.log(it.next());   // throws StopIteration (as the generator is now closed)
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES2015', '#sec-generator-objects', 'Generator objects')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ESDraft', '#sec-generator-objects', 'Generator objects')}}{{Spec2('ESDraft')}} 
+ +

Browser compatibility

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatChrome(39.0)}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidAndroid WebviewFirefox Mobile (Gecko)IE MobileOpera MobileSafari MobileChrome for Android
Basic support{{CompatNo}}{{CompatChrome(39.0)}}{{CompatVersionUnknown}}{{CompatNo}}{{CompatNo}}{{CompatNo}}{{CompatChrome(39.0)}}
+
+ +

See also

+ +

Legacy generators

+ + + +

ES2015 generators

+ + diff --git a/files/pl/web/javascript/reference/global_objects/index.html b/files/pl/web/javascript/reference/global_objects/index.html new file mode 100644 index 0000000000..ebe6dfe63f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/index.html @@ -0,0 +1,193 @@ +--- +title: Obiekty +slug: Web/JavaScript/Referencje/Obiekty +tags: + - Dokumentacja + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects +--- +
{{jsSidebar("Objects")}}
+ +

W tym rozdziale opisano wszystkie standardowe obiekty wbudowane JavaScript, w tym ich metody i właściwości.

+ +

Pojęcie "obiekty globalne" (lub standardowe obiekty wbudowane) tutaj nie są tym samym, co obiekt globalny, który  odnosi się do obiektów o zasięgu globalnym. Dostęp do obiektu globalnego można uzyskać za pomocą operatoa {{jsxref("Operatory/this", "this")}} w zakresie globalnym (ale tylko, jeśli nie jest właczony tryb ścisły ECMAScript 5. W trybie ścisłym, w takim przypadku zostanie zwrócona wartość  {{jsxref("undefined")}}). W rzeczywistości, zakres globalny składa się z własciwości obiektu globalnego, w tym właściwości dziedziczonych, jeśli istnieją.

+ +

Innymi obiektami o zasięgu globalnym są obiekty tworzone w skryptach przez użytkowników albo dostarczane przez aplikacje hosta. Obiekty hosta dostępne w kontekście przeglądarki są opisane w  informatorze API. Więcej informacji o różnicach dzielących DOM i rdzeń JavaScript, znajdziesz we Przeglądzie technologii JavaScript.

+ +

Obiekty standardowe wg kategorii

+ +

Wartości

+ +

Właściwości globalne zwracają proste wartości, które nie mają swoich własciwości ani metod

+ + + +

Funkcje

+ +

Należą tu funkcje globalne (wywoływane globalnie a nie w jakimś obiekcie), które  zwracają swoją wartość bezpośredni do wywołania.

+ + + +

Obiekty podstawowe

+ +

Są to  fundamentalne, podstawowe obiekty, stanowiące podstawę do tworzenia innych obiektów. Obejmuje to obiekty reprezentujace obiekty ogólne, funkcje i błędy.

+ + + +

Liczby i daty

+ +

Są to obiekty podstawowe reprezentujace liczby, daty i obliczenia matematyczne.

+ + + +

Przetwarzanie tekstu

+ +

Kategorie te tworzą obiekty reprezentujące łańcuchy i obsługujace manipulowanie łańcuchami.

+ + + +

Indeksowane kolekcje

+ +

Obiekty te reprezentują kolekcje danych, ktore są uporządkowane według wartości indeksu. Opejmuje to tablice, typowane tablice i konstrukcje podobne do tablic.

+ + + +

Kolekcje z kluczami

+ +

Są to obiekty reprezentujące kolekcje stosujace klucze. Zawierają elementy, które są iterowalne w kolejności estawiania.

+ + + +

Kolekcje wektorowe

+ +

Typy danych wektorowych {{Glossary("SIMD")}} są obiektami, w których dane formowane są w potoki.

+ + + +

Dane strukturalne

+ +

Obiekty tej kategorii reprezentują i współdziałają ze strukturyzowanymi buforami danych i danymi kodowymi uzywającymi notacji JSON (JavaScript Object Notation).

+ + + +

Kontrola obiektów abstrakcyjnych

+ + + +

Refleksy

+ + + +

Internacjonalizacja

+ +

Dodatki do jadra ECMAScript dla funkcji językowych.

+ + + +

WebAssembly

+ + + +

Pozostałe

+ + diff --git a/files/pl/web/javascript/reference/global_objects/infinity/index.html b/files/pl/web/javascript/reference/global_objects/infinity/index.html new file mode 100644 index 0000000000..7a2bd7ca45 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/infinity/index.html @@ -0,0 +1,35 @@ +--- +title: Infinity +slug: Web/JavaScript/Referencje/Obiekty/Infinity +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/Infinity +--- +
+
+
{{jsSidebar("Objects")}}
+
+
+ +

Podsumowanie

+ +

Wartość numeryczna reprezentująca nieskończoność.

+ +

Składnia

+ +
Infinity 
+ +

Opis

+ +

Infinity jest własnością najwyższego rzędu i nie jest przypisana do żadnego obiektu.

+ +

Początkową wartością Infinity jest {{jsxref("Number.POSITIVE_INFINITY")}}.

+ +

Wartość Infinity (+nieskończoność) jest większa niż jakakolwiek liczba. Wartość ta ma wszystkie cechy matematycznej nieskończoności; np. cokolwiek pomnożone przez Infinity jest równe Infinity, a cokolwiek podzielone przez Infinity jest równe 0.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/isfinite/index.html b/files/pl/web/javascript/reference/global_objects/isfinite/index.html new file mode 100644 index 0000000000..3b699e33c2 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/isfinite/index.html @@ -0,0 +1,56 @@ +--- +title: isFinite() +slug: Web/JavaScript/Referencje/Obiekty/isFinite +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/isFinite +--- +
+
+
{{jsSidebar("Objects")}}
+
+
+ +

Podsumowanie

+ +

Przetwarza argument w celu stwierdzenia czy jest on liczbą skończoną.

+ +

Składnia

+ +
isFinite(liczba)
+ +

Parametry

+ +
+
liczba 
+
Liczba do przetworzenia.
+
+ +

Opis

+ +

isFinite() jest funkcją najwyższego poziomu, niepowiązaną z żadnym obiektem.

+ +

Można użyć tej metody do określenia czy dana liczba jest skończona. Metoda isFinite() sprawdza liczbę podaną jako jej argument. Jeśli argument ma wartość {{jsxref("NaN")}} (nie jest liczbą), jest dodatnią lub ujemną nieskończonością, metoda ta zwraca false, w przeciwnym wypadku zwraca wartość true.

+ +

Przykłady

+ +
isFinite(Infinity);  // false
+isFinite(NaN);       // false
+isFinite(-Infinity); // false
+
+isFinite(0);         // true
+isFinite(2e64);      // true
+
+
+isFinite("0");       // true, would've been false with the
+                     // more robust Number.isFinite("0")
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/isnan/index.html b/files/pl/web/javascript/reference/global_objects/isnan/index.html new file mode 100644 index 0000000000..f2730b9c00 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/isnan/index.html @@ -0,0 +1,53 @@ +--- +title: isNaN() +slug: Web/JavaScript/Referencje/Obiekty/isNaN +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/isNaN +--- +

{{jsSidebar("Objects")}}

+ +

Podsumowanie

+ +

Sprawdza, czy argument nie ma wartości NaN ("nie-liczba").

+ +

Składnia

+ +
isNaN(testowanaWartość)
+ +

Parametry

+ +
+
testowanaWartość 
+
Wartość do sprawdzenia.
+
+ +

Opis

+ +

isNaN jest funkcją najwyższego rzędu i nie jest przypisana do żadnego obiektu.

+ +

Funkcje parseFloat i parseInt zwracają NaN, kiedy wyliczą wartość, która nie jest liczbą. isNaN zwraca true, jeśli przekazano jej NaN, a false w przeciwnym wypadku.

+ +

Funkcja ta jest o tyle przydatna, że wartości {{jsxref("NaN", "NaN")}} nie można skutecznie sprawdzać przy użyciu operatorów równości. x == NaN i x === NaN mają zawsze wartość false, bez względu na to, jaką wartość ma x, nawet jeśli x to NaN. Na przykład, zarówno 1 == NaN, jak i NaN == NaN zwracają false.

+ +

Przykłady

+ +

Przykład: Zastosowanie isNaN

+ +

Poniższy przykład wylicza wartość floatValue, by sprawdzić, czy jest liczbą, a następnie wywołuje odpowiednią procedurę.

+ +
var floatValue = parseFloat(toFloat);
+
+if (isNaN(floatValue)) {
+   notFloat();
+} else {
+   isFloat();
+}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/json/index.html b/files/pl/web/javascript/reference/global_objects/json/index.html new file mode 100644 index 0000000000..7a4b6c0812 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/json/index.html @@ -0,0 +1,147 @@ +--- +title: JSON +slug: Web/JavaScript/Referencje/Obiekty/JSON +tags: + - JSON + - JavaScript + - Obiekt +translation_of: Web/JavaScript/Reference/Global_Objects/JSON +--- +
{{JSRef}}
+ +

Obiekt JSON zawiera metody do analizy składniowej JavaScript Object Notation ({{glossary("JSON")}}) i konwertowania wartości do formatu JSON. Nie może być on wywołany lub utworzony i oprócz jego dwóch metod, sam w sobie nie ma interesującej funkcjonalności .

+ +

Różnice między językiem JavaScript i formatem JSON

+ +

Format JSON jest składnią do serializowania obiektów, tablic, liczb, napisów, wartości logicznych oraz {{jsxref("null")}}. Bazuje na składni języka JavaScript, ale różni się od niego: nie każdy JavaScript to JSON.

+ +

Obiekty i tablice: Nazwy właściwości muszą znajdować się w podwójnym cudzysłowie;  przecinki na końcach (trailing commas) nie są dozwolone.

+ +

Liczby: Zera nieznaczące są zakazane. Po przecinku musi się znaleźć co najmniej jedna liczba. Wartości NaN i Infinity nie są wspierane.

+ +

Każdy tekst w formacie JSON jest poprawnym wyrażeniem w języku JavaScript – ale wyłącznie w silnikach JavaScript, które mają zaimplementową możliwości, by wszystkie dokumenty w formacie JSON były zgodne ze standardem ECMA-262. W przeciwnym razie, znaki U+2028 (separator linii) i U+2029 (separator akapitów) są dozwolone w literałach znakowych i kluczach w formacie JSON, ale ich użycie w tym konteksie w języku JavaScript skutkuje zgłoszeniem błędu {{jsxref("SyntaxError")}}.

+ +

Rozważmy przykład, gdzie funkcja {{jsxref("JSON.parse()")}} przetwarza poniższy literał znakowy jako obiekt JSON, a funkcja eval wykonuje go jako tekst w języku JavaScript:

+ +
var code = '"\u2028\u2029"';
+JSON.parse(code); // działa poprawnie
+eval(code); // zgłasza błąd SyntaxError
+
+ +

Inne różnice to zgoda wyłącznie na literały znakowe w podwójnym cudzysłowie, brak zabezpieczenia dla {{jsxref("undefined")}} lub komentarzy.

+ +

Pełna składnia JSON

+ +

Pełna składnia JSON jest następująca:

+ +
JSON = null
+    or true or false
+    or JSONNumber
+    or JSONString
+    or JSONObject
+    or JSONArray
+
+JSONNumber = - PositiveNumber
+          or PositiveNumber
+PositiveNumber = DecimalNumber
+              or DecimalNumber . Digits
+              or DecimalNumber . Digits ExponentPart
+              or DecimalNumber ExponentPart
+DecimalNumber = 0
+             or OneToNine Digits
+ExponentPart = e Exponent
+            or E Exponent
+Exponent = Digits
+        or + Digits
+        or - Digits
+Digits = Digit
+      or Digits Digit
+Digit = 0 through 9
+OneToNine = 1 through 9
+
+JSONString = ""
+          or " StringCharacters "
+StringCharacters = StringCharacter
+                or StringCharacters StringCharacter
+StringCharacter = any character
+                  except " or \ or U+0000 through U+001F
+               or EscapeSequence
+EscapeSequence = \" or \/ or \\ or \b or \f or \n or \r or \t
+              or \u HexDigit HexDigit HexDigit HexDigit
+HexDigit = 0 through 9
+        or A through F
+        or a through f
+
+JSONObject = { }
+          or { Members }
+Members = JSONString : JSON
+       or Members , JSONString : JSON
+
+JSONArray = [ ]
+         or [ ArrayElements ]
+ArrayElements = JSON
+             or ArrayElements , JSON
+
+ +

Nieznaczące białe znaki nie mogą występować tylko wewnątrz JSONNumber (liczby nie mogą zawierać białych znaków) oraz JSONString (gdzie jest to interpretowane jako odpowiedni znak w litarale znakowym lub może spowodować błąd). Tabulacja pozioma (U+0009), powrót karetki (U+000D), nowa linia (U+000A) oraz spacja (U+0020) to jedyne prawidłowe białe znaki.

+ +

Metody

+ +
+
{{jsxref("JSON.parse()")}}
+
Parsuje literał znakowy na JSON, opcjonalnie przekształca otrzymaną wartosć i ją zwraca. Każde naruszenie składni JSON, wliczając w różnice między językiem JavaScript i JSON, powodują zgłosznie błędu {{jsxref("SyntaxError")}}. Opcja reviver pozwala zinterpretować, co replacer użył zamiast innych typów danych.
+
{{jsxref("JSON.stringify()")}}
+
Zwraca literał znakowy JSON odpowiadający określonej wartosci, ewentualnie zawierający jedynie niektóre wartości lub ze zamienionymi wartościami w sposób zdefinowany przez użytkownika. Domyślnie, wszystkie instance {{jsxref("undefined")}} są zastępowane przez {{jsxref("null")}} i inne niewspierane typy danych są ocenzurowywane. Opcja replacer pozwala określić inne zachowanie.
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES5.1', '#sec-15.12', 'JSON')}}{{Spec2('ES5.1')}}Initial definition.
{{SpecName('ES6', '#sec-json-object', 'JSON')}}{{Spec2('ES6')}}
{{SpecName('ESDraft', '#sec-json-object', 'JSON')}}{{Spec2('ESDraft')}}
+ +

Kompatybilność

+ +
+
+ + +

{{Compat("javascript.builtins.JSON")}}

+
+
+ +

Zobacz także

+ + + +

Tools

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/clear/index.html b/files/pl/web/javascript/reference/global_objects/map/clear/index.html new file mode 100644 index 0000000000..a4e7374127 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/clear/index.html @@ -0,0 +1,87 @@ +--- +title: Map.prototype.clear() +slug: Web/JavaScript/Referencje/Obiekty/Map/clear +tags: + - ECMAScript 2015 + - JavaScript + - Mapa + - Metodă + - Prototyp +translation_of: Web/JavaScript/Reference/Global_Objects/Map/clear +--- +
{{JSRef}}
+ +

Metoda clear() usuwa wszystkie elementy z obiektu Map.

+ +
var map1 = new Map();
+
+map1.set('bar', 'baz');
+map1.set(1, 'foo');
+
+console.log(map1.size);
+// wartość zwracana: 2
+
+map1.clear();
+
+console.log(map1.size);
+// wartość zwracana: 0
+
+ +

Składnia

+ +
myMap.clear();
+ +

Zwracana wartość

+ +

{{jsxref("undefined")}}.

+ +

Przykłady

+ +

Używanie metody clear

+ +
var myMap = new Map();
+myMap.set('bar', 'baz');
+myMap.set(1, 'foo');
+
+myMap.size;       // 2
+myMap.has('bar'); // true
+
+myMap.clear();
+
+myMap.size;       // 0
+myMap.has('bar')  // false
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-map.prototype.clear', 'Map.prototype.clear')}}{{Spec2('ES2015')}}Definicja początkowa.
{{SpecName('ESDraft', '#sec-map.prototype.clear', 'Map.prototype.clear')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ + + +

{{Compat("javascript.builtins.Map.clear")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/delete/index.html b/files/pl/web/javascript/reference/global_objects/map/delete/index.html new file mode 100644 index 0000000000..2016e577f8 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/delete/index.html @@ -0,0 +1,85 @@ +--- +title: Map.prototype.delete() +slug: Web/JavaScript/Referencje/Obiekty/Map/delete +tags: + - Mapa + - Metodă +translation_of: Web/JavaScript/Reference/Global_Objects/Map/delete +--- +
{{JSRef}}
+ +

Metoda delete() usuwa określony element z obiektu Map.

+ +
var map1 = new Map();
+map1.set('bar', 'foo');
+
+console.log(map1.delete('bar'));
+// oczekiwany wynik: true
+// (true wskazuje na poprawne usunięcie)
+
+console.log(map1.has('bar'));
+// oczekiwany wynik: false
+
+ +

Składnia

+ +
myMap.delete(key);
+ +

Parametery

+ +
+
key
+
Wymagany. Klucz elementu, który ma zostać usunięty z obiektu Map.
+
+ +

Zwracana wartość

+ +
+
Boolean
+
Zwraca true, jeśli element w Map istniał i został usunięty lub false, jeśli nie.
+
+ +

Przykłady

+ +

Używanie metody delete

+ +
var myMap = new Map();
+myMap.set('bar', 'foo');
+
+myMap.delete('bar'); // Zwraca true. Udało się usunąć.
+myMap.has('bar');    // Zwraca false. Element "bar" już nie istnieje.
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-map.prototype.delete', 'Map.prototype.delete')}}{{Spec2('ES2015')}}Definicja początkowa.
{{SpecName('ESDraft', '#sec-map.prototype.delete', 'Map.prototype.delete')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ + + +

{{Compat("javascript.builtins.Map.delete")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/entries/index.html b/files/pl/web/javascript/reference/global_objects/map/entries/index.html new file mode 100644 index 0000000000..97c049b150 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/entries/index.html @@ -0,0 +1,128 @@ +--- +title: Map.prototype.entries() +slug: Web/JavaScript/Referencje/Obiekty/Map/entries +tags: + - ECMAScript2015 + - Iterator + - JavaScript + - Mapa + - Metodă + - Prototyp +translation_of: Web/JavaScript/Reference/Global_Objects/Map/entries +--- +
{{JSRef}}
+ +

Metoda entries() zwraca nowy obiekt typu Iterator który zawiera pary[klucz, wartość] dla każdego elementu Mapy. Można się do nich odnieść w takiej kolejności, jakiej zostały wstawione.

+ +
{{EmbedInteractiveExample("pages/js/map-prototype-entries.html")}}
+ + + +

Składnia

+ +
myMap.entries()
+ +

Zwracana wartość

+ +

Nowy iterator obiektu typu {{jsxref("Map")}}.

+ +

Przykłady

+ +

Używanie entries()

+ +
var myMap = new Map();
+myMap.set('0', 'foo');
+myMap.set(1, 'bar');
+myMap.set({}, 'baz');
+
+var mapIter = myMap.entries();
+
+console.log(mapIter.next().value); // ["0", "foo"]
+console.log(mapIter.next().value); // [1, "bar"]
+console.log(mapIter.next().value); // [Object, "baz"]
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-map.prototype.entries', 'Map.prototype.entries')}}{{Spec2('ES2015')}}Początkowa definicja.
{{SpecName('ESDraft', '#sec-map.prototype.entries', 'Map.prototype.entries')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support38{{CompatVersionUnknown}}{{ CompatGeckoDesktop("20") }}{{CompatNo}}257.1
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}38{{CompatVersionUnknown}}{{CompatGeckoMobile("20")}}{{CompatNo}}{{CompatNo}}8
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/foreach/index.html b/files/pl/web/javascript/reference/global_objects/map/foreach/index.html new file mode 100644 index 0000000000..7280020397 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/foreach/index.html @@ -0,0 +1,104 @@ +--- +title: Map.prototype.forEach() +slug: Web/JavaScript/Referencje/Obiekty/Map/forEach +tags: + - ECMAScript2015 + - JavaScript + - Mapa + - Metodă + - Prototyp +translation_of: Web/JavaScript/Reference/Global_Objects/Map/forEach +--- +
{{JSRef}}
+ +

Metoda forEach() wykonuje dostarczoną funcję callback raz dla każdej pary klucz-wartosć Mapy w kolejności, w jakiej zostały zostały wstawione.

+ +
{{EmbedInteractiveExample("pages/js/map-prototype-foreach.html")}}
+ + + +

Składnia

+ +
myMap.forEach(callback[, thisArg])
+ +

Parametry

+ +
+
callback
+
Funkcja wykonywana dla każdego elementu.
+
thisArg
+
Wartość przypisywana do this poczas wywołania zwrotnego (funkcja callback).
+
+ +

Zwracana wartosć

+ +

{{jsxref("undefined")}}.

+ +

Opis

+ +

Metoda forEach wykonuje dostarczoną funkcję callback raz dla każdego klucza mapy, który istnieje. Nie jest wywoływana dla usuniętych kluczy, ale dla istniejących z wartością undefined już tak.

+ +

Funkcja callback przyjmuje trzy argumenty:

+ + + +

Jeśli argument thisArg jest dostarczony do forEach, zostaje przekazany do fukncji callback podczas jej wywołania, jako jej własna wartość this.  W przeciwnym wypadku, this przyjmuje wartość undefined

+ +

Każda wartość jest odwiedzana raz, oprócz przypadku, gdzie została usunięta, a następnie dodana ponownie, nim metoda forEach zakończyła swoje działanie. Funkcja callback nie jest wywoływana dla wartości usuniętych przed ich odwiedzeniem. Nowe wartości dodane jeszcze przed zakończeniem forEach zostaną odwiedzone.

+ +

Metoda forEach nie zwraca żadnej wartości.

+ +

Przykłady

+ +

Wyświetlanie zawartości Mapy

+ +

Poniższy kod wyświetla jedną linię dla każdej pary klucz-wartość Mapy:

+ +
function logMapElements(value, key, map) {
+    console.log(`m[${key}] = ${value}`);
+}
+new Map([['foo', 3], ['bar', {}], ['baz', undefined]]).forEach(logMapElements);
+// logs:
+// "m[foo] = 3"
+// "m[bar] = [object Object]"
+// "m[baz] = undefined"
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-map.prototype.foreach', 'Map.prototype.forEach')}}{{Spec2('ES2015')}}Definicja początkowa.
{{SpecName('ESDraft', '#sec-map.prototype.foreach', 'Map.prototype.forEach')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ + + +

{{Compat("javascript.builtins.Map.forEach")}}

+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/get/index.html b/files/pl/web/javascript/reference/global_objects/map/get/index.html new file mode 100644 index 0000000000..a8cb900ed7 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/get/index.html @@ -0,0 +1,80 @@ +--- +title: Map.prototype.get() +slug: Web/JavaScript/Referencje/Obiekty/Map/get +tags: + - ECMAScript 2015 + - JavaScript + - Mapa + - Metodă + - Prototyp +translation_of: Web/JavaScript/Reference/Global_Objects/Map/get +--- +
{{JSRef}}
+ +

Metoda get() zwraca podany element Mapy.

+ +
{{EmbedInteractiveExample("pages/js/map-prototype-get.html")}}
+ + + +

Składnia

+ +
myMap.get(key);
+ +

Parametry

+ +
+
key
+
Wymagany. Klucz elementu, który ma zostać zwrócony.
+
+ +

Zwracana wartość

+ +

Element powiązany z danym kluczym lub undefined, jeśli klucz nie został odnaleziony.

+ +

Przykłady

+ +

Używanie metody get

+ +
var myMap = new Map();
+myMap.set('bar', 'foo');
+
+myMap.get('bar');  // zwraca "foo".
+myMap.get('baz');  // zwraca undefined.
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-map.prototype.get', 'Map.prototype.get')}}{{Spec2('ES2015')}}Definicja początkowa.
{{SpecName('ESDraft', '#sec-map.prototype.get', 'Map.prototype.get')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ + + +

{{Compat("javascript.builtins.Map.get")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/has/index.html b/files/pl/web/javascript/reference/global_objects/map/has/index.html new file mode 100644 index 0000000000..14bf4f71dc --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/has/index.html @@ -0,0 +1,85 @@ +--- +title: Map.prototype.has() +slug: Web/JavaScript/Referencje/Obiekty/Map/has +tags: + - ECMAScript 2015 + - JavaScript + - Mapa + - Metodă + - Prototyp +translation_of: Web/JavaScript/Reference/Global_Objects/Map/has +--- +
{{JSRef}}
+ +

Metoda has() zwraca Boolean, który określa czy element o podanym kluczu istnieje.

+ +
{{EmbedInteractiveExample("pages/js/map-prototype-has.html")}}
+ + + +

Składnia

+ +
myMap.has(key);
+ +

Parametry

+ +
+
key
+
Wymagany. Klucz elementu, którego istnienie w Mapie zostanie sprawdzone.
+
+ +

Zwracana wartość

+ +
+
Boolean
+
+

true, jeśli dany element istnieje w Mapie - w przeciwnym wypadku false.

+
+
+ +

Przykłady

+ +

Używanie metody has

+ +
var myMap = new Map();
+myMap.set('bar', "foo");
+
+myMap.has('bar');  // zwraca true
+myMap.has('baz');  // zwraca false
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-map.prototype.has', 'Map.prototype.has')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ESDraft', '#sec-map.prototype.has', 'Map.prototype.has')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ + + +

{{Compat("javascript.builtins.Map.has")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/index.html b/files/pl/web/javascript/reference/global_objects/map/index.html new file mode 100644 index 0000000000..8c0a9833eb --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/index.html @@ -0,0 +1,458 @@ +--- +title: Map +slug: Web/JavaScript/Referencje/Obiekty/Map +tags: + - ECMAScript 2015 + - JavaScript + - Map +translation_of: Web/JavaScript/Reference/Global_Objects/Map +--- +
{{JSRef}}
+ +

Map jest prostym obiektem mapującym klucze na wartości. Każdy element (zarówno obiekt jak i {{Glossary("Primitive", "wartości proste")}}) mogą być użyte zarówno jako klucz jak i wartość.

+ +

Składnia

+ +
new Map([iterable])
+ +

Parametry

+ +
+
iterable
+
Iterable jest tablicą lub innym iterowalnym obiektem, którego elementy są parami typu klucz-wartość (np. 2 elementowa tablica). Każda para klucz-wartość jest dodawana do obiektu new Map. null jest traktowane jako undefined.
+
+ +

Opis

+ +

Obiekt Map iteruje swoje elementy we wprowadzonej kolejności — pętla {{jsxref("Statements/for...of", "for...of")}} zwraca tablicę  [key, value] dla każdej iteracji.

+ +

Należy pamiętać, że kolejność iteracji dla Map mapującej obiekty, w szczególności np. dla słownika słowników, odzwieciedlać będzie jedynie kolejność dodawania obiektów do kolekcji, natomiast kolejność dodawania elementów do samych obiektów nie jest gwarantowana i powinna być traktowana jako losowa.

+ +

Równość kluczy

+ +

Klucze porównywane są według algorytmu "same-value" (tej samej wartości).

+ +

NaN jest traktowana jako równa NaN (mimo tego, że NaN !== NaN). Wszystkie inne wartości są uważane za równe zgodnie z semantyką ===  operatora równości.

+ +

W obecnej specyfikacji ECMAScript -0 === +0, choć wcześniejsze propozycje zakładały inne zachowanie, co zaowocowało implementacją w niektórych wersjach przeglądarek. Szczegóły zawarte są w  "Value equality for -0 and 0"  w tabeli kompatybilności przeglądarek.

+ +

Porównanie Obiektów i Map

+ +

{{jsxref("Object", "Obiekty")}} są podobne do Map. W obu przypadkach pozwalają ustawić klucze dla wartości, zwracają te wartości, usuwają klucze i wykrywają czy coś jest przechowywane jako klucz. Z tego powodu (i ponieważ nie było innych wbudowanych alternatyw), Object  był używany wcześniej jako Map. Istnieją jednak ważne różnice pomiędzy Obiektami i Mapami, które powodują, że Map jest lepszym wyborem w pewnych przypadkach:

+ + + +

Nie oznacza to, że powinno się używać Maps wszędzie. Obiekty są wciąż używane w większości przypadków.  Instancje Map są użyteczne dla kolekcji, warto rozważyć ich zaadaptowanie jedynie w przypadkach, gdy wcześniej używano dla nich obiektów. Obiekty powinny być używane jako rejestr z polami i metodami. Jeśli wciąż nie jesteś pewien czego użyć, pomocne mogą okazać się poniższe pytania:

+ + + +

Jeśli odpowiedziałeś 'tak' na którekolwiek z tych pytań, prawdopodobnie powinieneś użyć Map. I przeciwnie, jeśli masz zamknięty zbiór kluczy, jeśli musisz odwoływać się do poszczególnych, specyficznych kluczy a każdy z nich ma swoje, odrębne od innych znaczenie, najprawdopodobniej potrzebujesz obiektu.

+ +

Własności

+ +
+
Map.length
+
Wartość length  jest zawsze równa 0.
+
{{jsxref("Map.@@species", "get Map[@@species]")}}
+
Funkcja konstruktora używana do tworzenia obiektów pochodnych.
+
{{jsxref("Map.prototype")}}
+
Reprezentuje prototyp funkcji konstruktora Map. Pozwala rozszerzać prototyp wszystkich obiektów Map o własne własności.
+
+ +

Instancje Map

+ +

Wszystkie instancje Map  dziedziczą po {{jsxref("Map.prototype")}}.

+ +

Własności

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/Map/prototype','Properties')}}

+ +

Metody

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/Map/prototype','Methods')}}

+ +

Przykłady

+ +

Używanie obiektu typu Map

+ +
var myMap = new Map();
+
+var keyString = 'a string',
+    keyObj = {},
+    keyFunc = function() {};
+
+// setting the values
+myMap.set(keyString, "value associated with 'a string'");
+myMap.set(keyObj, 'value associated with keyObj');
+myMap.set(keyFunc, 'value associated with keyFunc');
+
+myMap.size; // 3
+
+// getting the values
+myMap.get(keyString);    // "value associated with 'a string'"
+myMap.get(keyObj);       // "value associated with keyObj"
+myMap.get(keyFunc);      // "value associated with keyFunc"
+
+myMap.get('a string');   // "value associated with 'a string'"
+                         // because keyString === 'a string'
+myMap.get({});           // undefined, because keyObj !== {}
+myMap.get(function() {}) // undefined, because keyFunc !== function () {}
+
+ +

Użycie NaN jako kluczy w  Map

+ +

NaN can also be used as a key. Even though every NaN is not equal to itself (NaN !== NaN is true), the following example works, because NaNs are indistinguishable from each other:

+ +
var myMap = new Map();
+myMap.set(NaN, 'not a number');
+
+myMap.get(NaN); // "not a number"
+
+var otherNaN = Number('foo');
+myMap.get(otherNaN); // "not a number"
+
+ +

Iteracja po Map przy użyciu for..of

+ +
var myMap = new Map();
+myMap.set(0, 'zero');
+myMap.set(1, 'one');
+for (var [key, value] of myMap) {
+  console.log(key + ' = ' + value);
+}
+// 0 = zero
+// 1 = one
+
+for (var key of myMap.keys()) {
+  console.log(key);
+}
+// 0
+// 1
+
+for (var value of myMap.values()) {
+  console.log(value);
+}
+// zero
+// one
+
+for (var [key, value] of myMap.entries()) {
+  console.log(key + ' = ' + value);
+}
+// 0 = zero
+// 1 = one
+
+ +

Iteracja po Map przy użyciu forEach()

+ +
myMap.forEach(function(value, key) {
+  console.log(key + ' = ' + value);
+});
+// Will show 2 logs; first with "0 = zero" and second with "1 = one"
+
+ +

Relacja do obiektów typu Array

+ +
var kvArray = [['key1', 'value1'], ['key2', 'value2']];
+
+// Use the regular Map constructor to transform a 2D key-value Array into a map
+var myMap = new Map(kvArray);
+
+myMap.get('key1'); // returns "value1"
+
+// Use the spread operator to transform a map into a 2D key-value Array.
+console.log(uneval([...myMap])); // Will show you exactly the same Array as kvArray
+
+// Or use the spread operator on the keys or values iterator to get
+// an array of only the keys or values
+console.log(uneval([...myMap.keys()])); // Will show ["key1", "key2"]
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-map-objects', 'Map')}}{{Spec2('ES2015')}}Początkowa definicja
{{SpecName('ESDraft', '#sec-map-objects', 'Map')}}{{Spec2('ESDraft')}}
+ +

Kompatybilność przeglądarek

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support +

{{ CompatChrome(38) }} [1]

+
12{{ CompatGeckoDesktop("13") }}11257.1
Constructor argument: new Map(iterable){{ CompatChrome(38) }}12{{ CompatGeckoDesktop("13") }}{{CompatNo}}25{{CompatSafari("9")}}
iterable{{ CompatChrome(38) }}12{{ CompatGeckoDesktop("17") }}{{CompatNo}}257.1
Map.clear(){{ CompatChrome(31) }}
+ {{ CompatChrome(38) }}
12{{CompatGeckoDesktop("19")}}11257.1
Map.keys(), Map.values(), Map.entries(){{ CompatChrome(37) }}
+ {{ CompatChrome(38) }}
12{{CompatGeckoDesktop("20")}}{{CompatNo}}257.1
Map.forEach(){{ CompatChrome(36) }}
+ {{ CompatChrome(38) }}
12{{CompatGeckoDesktop("25")}}11257.1
Key equality for -0 and 0{{ CompatChrome(34) }}
+ {{ CompatChrome(38) }}
12{{CompatGeckoDesktop("29")}}{{CompatNo}}25{{CompatSafari("9")}}
Constructor argument: new Map(null){{CompatVersionUnknown}}12{{CompatGeckoDesktop("37")}}11{{CompatVersionUnknown}}{{CompatSafari("9")}}
Monkey-patched set() in Constructor{{CompatVersionUnknown}}12{{CompatGeckoDesktop("37")}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatSafari("9")}}
Map[@@species]{{CompatChrome("51")}}13{{CompatGeckoDesktop("41")}}{{CompatNo}}{{CompatOpera("38")}}{{CompatSafari("10")}}
Map() without new throws{{CompatVersionUnknown}}12{{ CompatGeckoDesktop("42") }}11{{CompatVersionUnknown}}{{CompatSafari("9")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{ CompatChrome(38) }} [1]{{ CompatGeckoMobile("13") }}{{CompatNo}}{{CompatNo}}8
Constructor argument: new Map(iterable){{CompatNo}}{{ CompatChrome(38) }}{{ CompatGeckoMobile("13") }}{{CompatNo}}{{CompatNo}}9
iterable{{CompatNo}}{{CompatNo}}{{ CompatGeckoMobile("17") }}{{CompatNo}}{{CompatNo}}8
Map.clear(){{CompatNo}}{{ CompatChrome(31) }}
+ {{ CompatChrome(38) }}
{{CompatGeckoMobile("19")}}{{CompatNo}}{{CompatNo}}8
Map.keys(), Map.values(), Map.entries(){{CompatNo}}{{ CompatChrome(37) }}
+ {{ CompatChrome(38) }}
{{CompatGeckoMobile("20")}}{{CompatNo}}{{CompatNo}}8
Map.forEach(){{CompatNo}}{{ CompatChrome(36) }}
+ {{ CompatChrome(38) }}
{{CompatGeckoMobile("25")}}{{CompatNo}}{{CompatNo}}8
Key equality for -0 and 0{{CompatNo}}{{ CompatChrome(34) }}
+ {{ CompatChrome(38) }}
{{CompatGeckoMobile("29")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
Constructor argument: new Map(null){{CompatUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile("37")}}{{CompatUnknown}}{{CompatUnknown}}9
Monkey-patched set() in Constructor{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile("37")}}{{CompatUnknown}}{{CompatUnknown}}9
Map[@@species]{{CompatUnknown}}{{CompatUnknown}}{{CompatGeckoMobile("41")}}{{CompatUnknown}}{{CompatUnknown}}10
Map() without new throws5.1{{CompatUnknown}}{{CompatGeckoMobile("42")}}{{CompatUnknown}}{{CompatUnknown}}9
+
+ +

[1] Starting with Chrome 31, the feature was available behind a preference. In chrome://flags, activate the entry “Enable Experimental JavaScript”.

+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/keys/index.html b/files/pl/web/javascript/reference/global_objects/map/keys/index.html new file mode 100644 index 0000000000..8723e295ab --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/keys/index.html @@ -0,0 +1,78 @@ +--- +title: Map.prototype.keys() +slug: Web/JavaScript/Referencje/Obiekty/Map/keys +tags: + - ECMAScript 2015 + - Iterator + - JavaScript + - Mapa + - Metodă + - Prototyp +translation_of: Web/JavaScript/Reference/Global_Objects/Map/keys +--- +
{{JSRef}}
+ +

Metoda keys() zwraca nowy obiekt typu Iterator, który zawiera klucze dla każdego elementu w Mapie. Można się do nich odnieść w takiej kolejności, jakiej zostały wstawione.

+ +
{{EmbedInteractiveExample("pages/js/map-prototype-keys.html")}}
+ + + +

Składnia

+ +
myMap.keys()
+ +

Zwracana wartość

+ +

Nowy iterator obiektu typu {{jsxref("Map")}}

+ +

Przykłady

+ +

Używanie keys()

+ +
var myMap = new Map();
+myMap.set('0', 'foo');
+myMap.set(1, 'bar');
+myMap.set({}, 'baz');
+
+var mapIter = myMap.keys();
+
+console.log(mapIter.next().value); // "0"
+console.log(mapIter.next().value); // 1
+console.log(mapIter.next().value); // Object
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-map.prototype.keys', 'Map.prototype.keys')}}{{Spec2('ES2015')}}Definicja początkowa.
{{SpecName('ESDraft', '#sec-map.prototype.keys', 'Map.prototype.keys')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ + + +

{{Compat("javascript.builtins.Map.keys")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/set/index.html b/files/pl/web/javascript/reference/global_objects/map/set/index.html new file mode 100644 index 0000000000..951cefd229 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/set/index.html @@ -0,0 +1,96 @@ +--- +title: Map.prototype.set() +slug: Web/JavaScript/Referencje/Obiekty/Map/set +tags: + - ECMAScript 2015 + - JavaScript + - Mapa + - Metodă + - Prototyp +translation_of: Web/JavaScript/Reference/Global_Objects/Map/set +--- +
{{JSRef}}
+ +

Metoda set() dodaje lub zmienia element o podany kluczu i wartości w Mapie

+ +
{{EmbedInteractiveExample("pages/js/map-prototype-set.html")}}
+ + + +

Składnia

+ +
myMap.set(key, value);
+ +

Parametry

+ +
+
key
+
Wymagany. Klucz elementu, który zostanie dodany do Mapy.
+
value
+
Wymagany. Wartość elementu, który zostanie dodany do Mapy.
+
+ +

Zwracana wartość

+ +

 Obiekt typu Map.

+ +

Przykłady

+ +

Używanie set()

+ +
var myMap = new Map();
+
+// Dodawanie nowych elementu
+myMap.set('bar', 'foo');
+myMap.set(1, 'foobar');
+
+// Zmiana istniejącego już elementu
+myMap.set('bar', 'baz');
+
+ +

Używanie set w połączeniu z łańcuchowaniem

+ +

Ponieważ set() zwraca ten sam obiekt typu Mapa, można użyć chainingu (uruchamianie metod jedna po drugiej na danym obiekcie przy użyciu kropek).

+ +
// Dodawanie elementów do mapy za pomocą chainingu
+myMap.set('bar', 'foo')
+     .set(1, 'foobar')
+     .set(2, 'baz');
+
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-map.prototype.set', 'Map.prototype.set')}}{{Spec2('ES2015')}}Definicja początowa.
{{SpecName('ESDraft', '#sec-map.prototype.set', 'Map.prototype.set')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ + + +

{{Compat("javascript.builtins.Map.set")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/size/index.html b/files/pl/web/javascript/reference/global_objects/map/size/index.html new file mode 100644 index 0000000000..0ec1025e46 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/size/index.html @@ -0,0 +1,65 @@ +--- +title: Map.prototype.size +slug: Web/JavaScript/Referencje/Obiekty/Map/size +tags: + - JavaScript + - Reference +translation_of: Web/JavaScript/Reference/Global_Objects/Map/size +--- +
{{JSRef}}
+ +

Atrybut size zwraca ilość elementów znajdujących się w obiekcie {{jsxref("Map")}}.

+ +
{{EmbedInteractiveExample("pages/js/map-prototype-size.html")}}
+ + + +

Opis

+ +

Wartość size to liczba reprezentująca ile elementów posiada obiekt Map. Funkcja set dla size to undefined; nie można edytować tego atrybutu.

+ +

Przykłady

+ +

Użycie size

+ +
var myMap = new Map();
+myMap.set('a', 'alpha');
+myMap.set('b', 'beta');
+myMap.set('g', 'gamma');
+
+myMap.size // 3
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-get-map.prototype.size', 'Map.prototype.size')}}{{Spec2('ES2015')}}Definicja początkowa.
{{SpecName('ESDraft', '#sec-get-map.prototype.size', 'Map.prototype.size')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność

+ + + +

{{Compat("javascript.builtins.Map.size")}}

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/map/values/index.html b/files/pl/web/javascript/reference/global_objects/map/values/index.html new file mode 100644 index 0000000000..50a7d72d0f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/map/values/index.html @@ -0,0 +1,77 @@ +--- +title: Map.prototype.values() +slug: Web/JavaScript/Referencje/Obiekty/Map/values +tags: + - ECMAScript 2015 + - Iterator + - JavaScript + - Mapa + - Metodă + - Prototyp +translation_of: Web/JavaScript/Reference/Global_Objects/Map/values +--- +
{{JSRef}}
+ +

Metoda values() zwraca nowy obiekt typu Iterator, który zawiera wartości dla każdego elementu w Mapie. Można się do nich odnieść w takiej kolejności, jakiej zostały wstawione.

+ +
{{EmbedInteractiveExample("pages/js/map-prototype-values.html")}}
+ + + +

Składnia

+ +
myMap.values()
+ +

Zwracana wartość

+ +

Nowy iterator obiektu typu {{jsxref("Map")}}.

+ +

Przykłady

+ +

Używanie values()

+ +
var myMap = new Map();
+myMap.set('0', 'foo');
+myMap.set(1, 'bar');
+myMap.set({}, 'baz');
+
+var mapIter = myMap.values();
+
+console.log(mapIter.next().value); // "foo"
+console.log(mapIter.next().value); // "bar"
+console.log(mapIter.next().value); // "baz"
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-map.prototype.values', 'Map.prototype.values')}}{{Spec2('ES2015')}}Definicja początkowa.
{{SpecName('ESDraft', '#sec-map.prototype.values', 'Map.prototype.values')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarkami

+ + + +

{{Compat("javascript.builtins.Map.values")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/abs/index.html b/files/pl/web/javascript/reference/global_objects/math/abs/index.html new file mode 100644 index 0000000000..c3b333a4ce --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/abs/index.html @@ -0,0 +1,54 @@ +--- +title: Math.abs() +slug: Web/JavaScript/Referencje/Obiekty/Math/abs +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/abs +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca wartość bezwzględną danej liczby.

+ +

Math.abs(x)=|x|={xifx>00ifx=0-xifx<0{\mathtt{\operatorname{Math.abs}(x)}} = {|x|} = \begin{cases} x & \text{if} \quad x \geq 0 \\ -x & \text{if} \quad x < 0 \end{cases}

+ +

Składnia

+ +
Math.abs(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Ponieważ abs jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.abs(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.abs()

+ +

Poniższa funkcja zwraca wartość bezwzględną zmiennej x:

+ +
Math.abs('-1'); // 1
+Math.abs(-2); // 2
+Math.abs(null); // 0
+Math.abs('string'); // NaN
+Math.abs(); // NaN
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/acos/index.html b/files/pl/web/javascript/reference/global_objects/math/acos/index.html new file mode 100644 index 0000000000..afb1485ada --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/acos/index.html @@ -0,0 +1,59 @@ +--- +title: Math.acos() +slug: Web/JavaScript/Referencje/Obiekty/Math/acos +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/acos +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca arcus cosinus (w radianach) danej liczby.

+ +

x[-1;1],Math.acos(x)=arccos(x)= the unique y[0;π]such thatcos(y)=x\forall x \in [{-1};1],\;\mathtt{\operatorname{Math.acos}(x)} = \arccos(x) = \text{ the unique } \; y \in [0; \pi] \, \text{such that} \; \cos(y) = x

+ +

Składnia

+ +
Math.acos(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Metoda acos zwraca wartość numeryczną od 0 do pi dla x pomiędzy -1 a 1. Jeśli liczba x jest spoza przedziału [-1, 1], zwracany jest {{jsxref("NaN")}}.

+ +

Ponieważ acos jest statyczną metodą obiektu Math, zawsze odwołujemy się do niej poprzez Math.acos(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.acos()

+ +

Poniższa funkcja zwraca arcus cosinus zmiennej x:

+ +
Math.acos(-2);  // NaN
+Math.acos(-1);  // 3.141592653589793
+Math.acos(0);   // 1.5707963267948966
+Math.acos(0.5); // 1.0471975511965979
+Math.acos(1);   // 0
+Math.acos(2);   // NaN
+ +

Jeśli do getAcos przekazana zostanie wartość -1, funkcja zwróci 3.141592653589793; jeśli przekazana zostanie wartość 2, zwrócony zostanie NaN, ponieważ 2 jest poza zakresem (tj. dziedziną funkcji arcus cosinus).

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/asin/index.html b/files/pl/web/javascript/reference/global_objects/math/asin/index.html new file mode 100644 index 0000000000..e473586a49 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/asin/index.html @@ -0,0 +1,58 @@ +--- +title: Math.asin() +slug: Web/JavaScript/Referencje/Obiekty/Math/asin +tags: + - JavaScript + - Math +translation_of: Web/JavaScript/Reference/Global_Objects/Math/asin +--- +

{{jsref}}

+ +

Podsumowanie

+ +

Zwraca arcus sinus (w radianach) danej liczby.

+ +

x[-1;1],Math.asin(x)=arcsin(x)= the unique y[-π2;π2]such thatsin(y)=x\forall x \in [{-1};1],\;\mathtt{\operatorname{Math.asin}(x)} = \arcsin(x) = \text{ the unique } \; y \in \left[-\frac{\pi}{2}; \frac{\pi}{2}\right] \, \text{such that} \; \sin(y) = x

+ +

Składnia

+ +
Math.asin(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Metoda Math.asin() zwraca wartość liczbową pomiędzy -π2-\frac{\pi}{2} i π2\frac{\pi}{2} radianów dla x z przedziału [-1, 1]. Jeśli x jest poza tym zakresem, zwracany jest NaN.

+ +

Ponieważ asin jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.asin(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.asin()

+ +

Poniższa funkcja zwraca arcus sinus zmiennej x:

+ +
Math.asin(-2);  // NaN
+Math.asin(-1);  // -1.5707963267948966 (-pi/2)
+Math.asin(0);   // 0
+Math.asin(0.5); // 0.5235987755982989
+Math.asin(1);   // 1.570796326794897 (pi/2)
+Math.asin(2);   // NaN
+ +

Jeśli do funkcji getAsin przekazana zostanie wartość 1, funkcja ta zwróci 1.570796326794897 (pi/2); jeśli przekazana zostanie wartość 2, funkcja zwróci {{jsxref("NaN")}}, ponieważ 2 jest poza dziedziną funkcji arcus sinus.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/atan/index.html b/files/pl/web/javascript/reference/global_objects/math/atan/index.html new file mode 100644 index 0000000000..4e452e1f13 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/atan/index.html @@ -0,0 +1,51 @@ +--- +title: Math.atan() +slug: Web/JavaScript/Referencje/Obiekty/Math/atan +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/atan +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca arcus tangens (w radianach) danej liczby.

+ +

Math.atan(x)=arctan(x)= the unique y[-π2;π2]such thattan(y)=x\mathtt{\operatorname{Math.atan}(x)} = \arctan(x) = \text{ the unique } \; y \in \left[-\frac{\pi}{2}; \frac{\pi}{2}\right] \, \text{such that} \; \tan(y) = x

+ +

Składnia

+ +
Math.atan(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Metoda atan zwraca wartość liczbową pomiędzy -π2-\frac{\pi}{2} i π2\frac{\pi}{2} radianów.

+ +

Ponieważ atan jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.atan(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.atan()

+ +
Math.atan(1);  // 0.7853981633974483
+Math.atan(0);  // 0
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/atan2/index.html b/files/pl/web/javascript/reference/global_objects/math/atan2/index.html new file mode 100644 index 0000000000..81f4606036 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/atan2/index.html @@ -0,0 +1,63 @@ +--- +title: Math.atan2() +slug: Web/JavaScript/Referencje/Obiekty/Math/atan2 +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/atan2 +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca kąta (w radianach) utworzony przez oś OX i prostą przechodzącą przez punkt o podanych współrzędnych.

+ +

Składnia

+ +
Math.atan2(y, x)
+ +

Parametry

+ +
+
y, x 
+
liczby.
+
+ +

Opis

+ +

Metoda atan2 zwraca wartość liczbową pomiędzy -π a π, reprezentującą kąt theta punktu (x, y). Kąt ten, mierzony w radianach, został utworzony przez dodatnią oś OX i punkt (x,y), z obrotem w kierunku przeciwnym do ruchu wskazówek zegara. Należy zwrócić uwagę na to, że pierwszym argumentem tej funkcji jest współrzędna y, a x jest argumentem drugim.

+ +

Do metody Math.atan2() przekazywane są osobno argumenty x i y, podczas gdy do metody atan przekazywany jest stosunek tych dwóch wartości.

+ +

Ponieważ atan2() jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.atan2(), a nie jak do metody instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.atan2()

+ +
Math.atan2(90, 15); // 1.4056476493802699
+Math.atan2(15, 90); // 0.16514867741462683
+
+Math.atan2(±0, -0);               // ±PI.
+Math.atan2(±0, +0);               // ±0.
+Math.atan2(±0, -x);               // ±PI for x > 0.
+Math.atan2(±0, x);                // ±0 for x > 0.
+Math.atan2(-y, ±0);               // -PI/2 for y > 0.
+Math.atan2(y, ±0);                // PI/2 for y > 0.
+Math.atan2(±y, -Infinity);        // ±PI for finite y > 0.
+Math.atan2(±y, +Infinity);        // ±0 for finite y > 0.
+Math.atan2(±Infinity, x);         // ±PI/2 for finite x.
+Math.atan2(±Infinity, -Infinity); // ±3*PI/4.
+Math.atan2(±Infinity, +Infinity); // ±PI/4.
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/ceil/index.html b/files/pl/web/javascript/reference/global_objects/math/ceil/index.html new file mode 100644 index 0000000000..8e48d70931 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/ceil/index.html @@ -0,0 +1,49 @@ +--- +title: Math.ceil() +slug: Web/JavaScript/Referencje/Obiekty/Math/ceil +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/ceil +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca najmniejszą liczbę całkowitą większą od lub równą danej.

+ +

Składnia

+ +
Math.ceil(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Ponieważ ceil jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.ceil(), a nie jak do metody instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.ceil()

+ +

Poniższa funkcja zwraca wartość metody ceil dla zmiennej x:

+ +
Math.ceil(.95);   // 1
+Math.ceil(4);     // 4
+Math.ceil(7.004); // 8
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/cos/index.html b/files/pl/web/javascript/reference/global_objects/math/cos/index.html new file mode 100644 index 0000000000..6634e7d96e --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/cos/index.html @@ -0,0 +1,52 @@ +--- +title: Math.cos() +slug: Web/JavaScript/Referencje/Obiekty/Math/cos +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/cos +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca cosinus danej liczby.

+ +

Składnia

+ +
Math.cos(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Metoda cos zwraca wartość liczbową pomiędzy -1 a 1, która reprezentuje cosinus kąta.

+ +

Ponieważ cos() jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.cos(), a nie jak do metody instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.cos()

+ +
Math.cos(0);           // 1
+Math.cos(1);           // 0.5403023058681398
+
+Math.cos(Math.PI);     // -1
+Math.cos(2 * Math.PI); // 1
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/e/index.html b/files/pl/web/javascript/reference/global_objects/math/e/index.html new file mode 100644 index 0000000000..76659e8c1d --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/e/index.html @@ -0,0 +1,40 @@ +--- +title: Math.E +slug: Web/JavaScript/Referencje/Obiekty/Math/E +tags: + - JavaScript + - Math + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Math/E +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Stała Eulera stanowiąca podstawę logarytmów naturalnych, w przybliżeniu 2.718.

+ +

Math.E=e2.718\mathtt{\mi{Math.E}} = e \approx 2.718

+ +

Opis

+ +

Ponieważ E jest statyczną własnością obiektu Math, zawsze odwołujemy się do niej poprzez Math.E, a nie jak do własności instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.E

+ +

Poniższa funkcja zwraca e:

+ +
function getNapier() {
+   return Math.E;
+}
+
+getNapier(); // 2.718281828459045
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/exp/index.html b/files/pl/web/javascript/reference/global_objects/math/exp/index.html new file mode 100644 index 0000000000..f7bc13ecbb --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/exp/index.html @@ -0,0 +1,49 @@ +--- +title: Math.exp() +slug: Web/JavaScript/Referencje/Obiekty/Math/exp +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/exp +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca ex, gdzie x to argument, a e to {{jsxref("Math.E", "stała Eulera", "", 1)}}, podstawa logarytmu naturalnego.

+ +

Składnia

+ +
Math.exp(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Ponieważ exp jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.exp(), a nie jak do metody instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.exp()

+ +
Math.exp(-1); // 0.36787944117144233
+Math.exp(0);  // 1
+Math.exp(1);  // 2.718281828459045
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/floor/index.html b/files/pl/web/javascript/reference/global_objects/math/floor/index.html new file mode 100644 index 0000000000..3fea41b72f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/floor/index.html @@ -0,0 +1,46 @@ +--- +title: Math.floor() +slug: Web/JavaScript/Referencje/Obiekty/Math/floor +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/floor +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca największą liczbę całkowitą mniejszą od lub równą danej.

+ +

Składnia

+ +
Math.floor(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Ponieważ floor jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.floor(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.floor()

+ +
Math.floor( 45.95); //  45
+Math.floor(-45.95); // -46
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/index.html b/files/pl/web/javascript/reference/global_objects/math/index.html new file mode 100644 index 0000000000..350fb3a7de --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/index.html @@ -0,0 +1,94 @@ +--- +title: Math +slug: Web/JavaScript/Referencje/Obiekty/Math +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/Math +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Wbudowany obiekt zawierający własności i metody związane z funkcjami i stałymi matematycznymi. Na przykład własność {{jsxref("Math.PI", "PI")}} obiektu Math zawiera wartość liczby pi.

+ +

Tworzony przez

+ +

Obiekt Math w języku JavaScript jest predefiniowanym obiektem najwyższego poziomu. Można z niego korzystać od razu, bez korzystania z konstruktora lub wywoływania tworzącej metody.

+ +

Opis

+ +

Wszystkie własności i metody obiektu Math są statyczne. Do stałej pi odwołujemy się poprzez Math.PI, a funkcję sinus wywołujemy jako Math.sin(x), gdzie x jest argumentem metody. Stałe zdefiniowane są z pełną precyzją liczb rzeczywistych JavaScriptu.

+ +

Czasami wygodniej jest skorzystać z polecenia {{jsxref("with")}}, kiedy w pewnym fragmencie kodu wykonywane jest wiele obliczeń korzystających z metod i stałych obiektu Math. Unika się wtedy wielokrotnego wpisywania "Math". Na przykład:

+ +
with (Math) {
+   a = PI * r*r;
+   y = r*sin(theta);
+   x = r*cos(theta);
+}
+
+ +

Własności

+ +
+
{{jsxref("Math.E")}}
+
stała Eulera, podstawa logarytmu naturalnego, w przybliżeniu 2.718.
+
{{jsxref("Math.LN2")}}
+
logarytm naturalny liczby 2, w przybliżeniu 0.693.
+
{{jsxref("Math.LN10")}}
+
logarytm naturalny liczby 10, w przybliżeniu 2.302.
+
{{jsxref("Math.LOG2E")}}
+
logarytm o podstawie 2 z liczby E, w przybliżeniu 1.442.
+
{{jsxref("Math.LOG10E")}}
+
logarytm o podstawie 10 z liczby E, w przybliżeniu 0.434.
+
{{jsxref("Math.PI")}}
+
stosunek obwodu okręgu do jego średnicy, w przybliżeniu 3.14159.
+
{{jsxref("Math.SQRT1_2")}}
+
pierwiastek kwadratowy z liczby 1/2, albo, inaczej mówiąc, odwrotność pierwiastka kwadratowego z liczby 2, w przybliżeniu 0.707.
+
{{jsxref("Math.SQRT2")}}
+
pierwiastek kwadratowy z liczby 2, w przybliżeniu 1.414.
+
+ +

Metody

+ +
+
{{jsxref("Math.abs()")}}
+
zwraca wartość bezwzględną danej liczby.
+
{{jsxref("Math.acos()")}}
+
zwraca arcus cosinus (w radianach) danej liczby.
+
{{jsxref("Math.asin()")}}
+
zwraca arcus sinus (w radianach) danej liczby.
+
{{jsxref("Math.atan()")}}
+
zwraca arcus tangens (w radianach) danej liczby.
+
{{jsxref("Math.atan2()")}}
+
zwraca kąt (w radianach) utworzony przez oś OX i prostą przechodzącą przez punkt o podanych współrzędnych.
+
{{jsxref("Math.ceil()")}}
+
zwraca najmniejszą liczbę całkowitą większą od lub równą danej.
+
{{jsxref("Math.cos()")}}
+
zwraca cosinus danej liczby.
+
{{jsxref("Math.exp()")}}
+
zwraca Ex, gdzie x to argument, a E to stała Eulera.
+
{{jsxref("Math.floor()")}}
+
zwraca największą liczbę całkowitą mniejszą od lub równą danej.
+
{{jsxref("Math.log()")}}
+
zwraca logarytm naturalny (tj. o podstawie E) z danej liczby.
+
{{jsxref("Math.max()")}}
+
zwraca większą z dwóch liczb.
+
{{jsxref("Math.min()")}}
+
zwraca mniejszą z dwóch liczb.
+
{{jsxref("Math.pow()")}}
+
zwraca daną liczbę podniesioną do danej potęgi.
+
{{jsxref("Math.random()")}}
+
zwraca liczbą pseudolosową z przedziału [0, 1).
+
{{jsxref("Math.round()")}}
+
zwraca daną liczbę zaokrągloną do najbliższej liczby całkowitej.
+
{{jsxref("Math.sin()")}}
+
zwraca sinus danej liczby.
+
{{jsxref("Math.sqrt()")}}
+
zwraca pierwiastek kwadratowy danej liczby.
+
{{jsxref("Math.tan()")}}
+
zwraca tangens danej liczby.
+
diff --git a/files/pl/web/javascript/reference/global_objects/math/ln10/index.html b/files/pl/web/javascript/reference/global_objects/math/ln10/index.html new file mode 100644 index 0000000000..7b05143a06 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/ln10/index.html @@ -0,0 +1,42 @@ +--- +title: Math.LN10 +slug: Web/JavaScript/Referencje/Obiekty/Math/LN10 +tags: + - JavaScript + - Math + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Math/LN10 +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Logarytm naturalny liczby 10, w przybliżeniu 2.302.

+ +

Math.LN10=ln(10)2.302\mathtt{\mi{Math.LN10}} = \ln(10) \approx 2.302

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

Opis

+ +

Ponieważ LN10 jest statyczną własnością obiektu Math, zawsze odwołujemy się do niej poprzez Math.LN10, a nie jak do własności instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.LN10

+ +

Poniższa funkcja zwraca logarytm naturalny liczby 10:

+ +
function getNatLog10() {
+   return Math.LN10;
+}
+
+getNatLog10(); // 2.302585092994046
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/ln2/index.html b/files/pl/web/javascript/reference/global_objects/math/ln2/index.html new file mode 100644 index 0000000000..aed4335b9f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/ln2/index.html @@ -0,0 +1,40 @@ +--- +title: Math.LN2 +slug: Web/JavaScript/Referencje/Obiekty/Math/LN2 +tags: + - JavaScript + - Math + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Math/LN2 +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Logarytm naturalny liczby 2, w przybliżeniu 0.693

+ +

Math.LN2=ln(2)0.693\mathtt{\mi{Math.LN2}} = \ln(2) \approx 0.693

+ +

Opis

+ +

Ponieważ LN2 jest statyczną własnością obiektu Math, zawsze odwołujemy się do niej poprzez Math.LN2, a nie jak do własności instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.LN2

+ +

Poniższa funkcja zwraca logarytm naturalny liczby 2:

+ +
function getNatLog2() {
+   return Math.LN2;
+}
+
+getNatLog2(); // 0.6931471805599453
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/log/index.html b/files/pl/web/javascript/reference/global_objects/math/log/index.html new file mode 100644 index 0000000000..14e292b04f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/log/index.html @@ -0,0 +1,54 @@ +--- +title: Math.log() +slug: Web/JavaScript/Referencje/Obiekty/Math/log +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/log +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca logarytm naturalny (o podstawie {{jsxref("Math.E", "e")}}) z danej liczby.

+ +

x>0,Math.log(x)=ln(x)=the uniqueysuch thatey=x\forall x > 0, \mathtt{\operatorname{Math.log}(x)} = \ln(x) = \text{the unique} \; y \; \text{such that} \; e^y = x

+ +

Składnia

+ +
Math.log(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Jeśli wartość liczby x jest ujemna, zwracaną wartością jest zawsze {{jsxref("NaN")}}.

+ +

Ponieważ log() jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.log(), a nie jak do metody instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.log()

+ +

 

+ +
Math.log(-1); // NaN, out of range
+Math.log(0);  // -Infinity
+Math.log(1);  // 0
+Math.log(10); // 2.302585092994046
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/log10e/index.html b/files/pl/web/javascript/reference/global_objects/math/log10e/index.html new file mode 100644 index 0000000000..33765632e0 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/log10e/index.html @@ -0,0 +1,44 @@ +--- +title: Math.LOG10E +slug: Web/JavaScript/Referencje/Obiekty/Math/LOG10E +tags: + - JavaScript + - Math + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Math/LOG10E +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Logarytm o podstawie 10 z E, w przybliżeniu 0.434.

+ +

Math.LOG10E=log10(e)0.434\mathtt{\mi{Math.LOG10E}} = \log_10(e) \approx 0.434

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

 

+ +

Opis

+ +

Ponieważ LOG10E jest statyczną własnością obiektu Math, zawsze odwołujemy się do niej poprzez Math.LOG10E, a nie jak do własności instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.LOG10E

+ +

Poniższa funkcja zwraca logarytm o podstawie 10 z E:

+ +
function getLog10e() {
+   return Math.LOG10E;
+}
+
+getLog10e(); // 0.4342944819032518
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/log2e/index.html b/files/pl/web/javascript/reference/global_objects/math/log2e/index.html new file mode 100644 index 0000000000..29d465fe42 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/log2e/index.html @@ -0,0 +1,42 @@ +--- +title: Math.LOG2E +slug: Web/JavaScript/Referencje/Obiekty/Math/LOG2E +tags: + - JavaScript + - Math + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Math/LOG2E +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Logarytm o podstawie 2 z E, w przybliżeniu 1.442.

+ +

Math.LOG2E=log2(e)1.442\mathtt{\mi{Math.LOG2E}} = \log_2(e) \approx 1.442

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

Opis

+ +

Ponieważ LOG2E jest statyczną własnością obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.LOG2E, a nie jak do własności instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.LOG2E

+ +

Poniższa funkcja zwraca logarytm o podstawie 2 z E:

+ +
function getLog2e() {
+   return Math.LOG2E;
+}
+
+getLog2e(); // 1.4426950408889634
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/max/index.html b/files/pl/web/javascript/reference/global_objects/math/max/index.html new file mode 100644 index 0000000000..40946461d5 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/max/index.html @@ -0,0 +1,43 @@ +--- +title: Math.max() +slug: Web/JavaScript/Referencje/Obiekty/Math/max +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/max +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Zwraca największą z podanych liczb.

+ +

Składnia

+ +
Math.max([value1[, value2[, ...]]])
+ +

Parametry

+ +
+
value1, value2, ...
+
liczby.
+
+ +

Opis

+ +

Ponieważ max jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.max(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.max()

+ +
Math.max(10, 20);   //  20
+Math.max(-10, -20); // -10
+Math.max(-10, 20);  //  20
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/min/index.html b/files/pl/web/javascript/reference/global_objects/math/min/index.html new file mode 100644 index 0000000000..75a892461b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/min/index.html @@ -0,0 +1,44 @@ +--- +title: Math.min() +slug: Web/JavaScript/Referencje/Obiekty/Math/min +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/min +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca najmniejszą z podanych liczb.

+ +

Składnia

+ +
Math.min([value1[, value2[, ...]]])
+ +

Parametry

+ +
+
value1, value2, ...
+
liczby.
+
+ +

Opis

+ +

Ponieważ min jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.min(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.min()

+ +

Poniższa funkcja porównuje zmienne x and y i zwraca mniejszą z nich:

+ +
var x = 10, y = -20;
+var z = Math.min(x, y);
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/pi/index.html b/files/pl/web/javascript/reference/global_objects/math/pi/index.html new file mode 100644 index 0000000000..429a21db09 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/pi/index.html @@ -0,0 +1,40 @@ +--- +title: Math.PI +slug: Web/JavaScript/Referencje/Obiekty/Math/PI +tags: + - JavaScript + - Math + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Math/PI +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Stosunek obwodu okręgu do jego średnicy, w przybliżeniu 3.14159.

+ +

Math.PI=π3.14159\mathtt{\mi{Math.PI}} = \pi \approx 3.14159

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

Opis

+ +

Ponieważ PI jest statyczną własnością obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.PI, a nie jak do własności instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.PI

+ +

Poniższa funkcja zwraca wartość pi:

+ +
function getPi() {
+   return Math.PI;
+}
+
+calculateCircumference(1);  // 6.283185307179586
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/pow/index.html b/files/pl/web/javascript/reference/global_objects/math/pow/index.html new file mode 100644 index 0000000000..89d0a1c21b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/pow/index.html @@ -0,0 +1,49 @@ +--- +title: Math.pow() +slug: Web/JavaScript/Referencje/Obiekty/Math/pow +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/pow +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca liczbę podstawa podniesioną do potęgi o wykładniku wykładnik, tj. podstawawykładnik.

+ +

Składnia

+ +
Math.pow(podstawa, wykładnik)
+ +

Parametry

+ +
+
podstawa 
+
liczba podnoszona do potęgi.
+
+ +
+
wykładnik 
+
wykładnik potęgi, do której podnoszona jest liczba podstawa.
+
+ +

Opis

+ +

Ponieważ pow jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.pow(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.pow()

+ +
Math.pow(7, 2); // 49
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/random/index.html b/files/pl/web/javascript/reference/global_objects/math/random/index.html new file mode 100644 index 0000000000..af6fa11aa7 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/random/index.html @@ -0,0 +1,67 @@ +--- +title: Math.random() +slug: Web/JavaScript/Referencje/Obiekty/Math/random +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/random +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca pseudolosową, zmiennoprzecinkową liczbę z przedziału [0, 1) ( jedynka nie należy do przedziału). Podstawą generatora liczb losowych (ang. seed ) jest aktualny czas, tak samo jak w języku Java. Ponieważ random jest statyczną metodą obiektu Math, zawsze odwołujemy się do niej poprzez Math.random(), a nie jak do metody instancji obiektu Math utworzonej przez użytkownika.

+ +
+

Notatka: Math.random() nie zapewnia kryptograficznie bezpiecznych liczb losowych. Nie używaj ich do niczego związanego z bezpieczeństwem (np. generowanie haseł). Zamiast tego użyj Web Crypto API, a dokładniej: metodę {{domxref("RandomSource.getRandomValues()", "window.crypto.getRandomValues()")}}.

+
+ +

Składnia

+ +
Math.random()
+ +

Parametry

+ +

Brak.

+ +

Wartość zwracana

+ +

Liczba pseudolosowa, zmiennoprzecinkowa zawarta w przedziale [0, 1) (od 0 (włącznie) do 1 (wykluczając 1)).

+ +

Przykłady

+ +

Zastosowanie Math.random()

+ +

Zwraca losową liczbę większą lub równą 0 i mniejszą od 1.

+ +
function getRandom() {
+  return Math.random();
+}
+ +

Uzyskanie losowej liczby między dwiema wartościami

+ +

Ten przykład zwraca losową liczbę znajdującą się pomiędzy określonymi wartościami. Zwrócona wartość jest większa lub równa min, i jest mniejsza niż max.

+ +
function getRandomInt(min, max) {
+  min = Math.ceil(min);
+  max = Math.floor(max);
+  return Math.floor(Math.random() * (max - min)) + min;
+}
+
+ +

Uzyskanie losowej liczby między dwiema wartościami z przedziału [min, max] (max włącznie)

+ +
function getRandomIntInclusive(min, max) {
+  min = Math.ceil(min);
+  max = Math.floor(max);
+  return Math.floor(Math.random() * (max - min + 1)) + min;
+}
+ +

Wsparcie przeglądarek

+ + + +

{{Compat("javascript.builtins.Math.random")}}

diff --git a/files/pl/web/javascript/reference/global_objects/math/round/index.html b/files/pl/web/javascript/reference/global_objects/math/round/index.html new file mode 100644 index 0000000000..4f0729568b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/round/index.html @@ -0,0 +1,50 @@ +--- +title: Math.round() +slug: Web/JavaScript/Referencje/Obiekty/Math/round +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/round +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca daną liczbę zaokrągloną do najbliższej liczby całkowitej.

+ +

Składnia

+ +
Math.round(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Jeśli część ułamkowa liczby x wynosi 0.5 lub więcej, argument jest zaokrąglany do najbliższej większej liczby całkowitej. Jeśli część ułamkowa liczby x jest mniejsza niż 0.5, argument jest zaokrąglany do najbliższej mniejszej liczby całkowitej.

+ +

Ponieważ round jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.round(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.round()

+ +
// zwraca 20
+x = Math.round(20.49)
+
+// zwraca 21
+x = Math.round(20.5)
+
+// zwraca -20
+x = Math.round(-20.5)
+
+// zwraca -21
+x = Math.round(-20.51)
+
+ +

 

diff --git a/files/pl/web/javascript/reference/global_objects/math/sign/index.html b/files/pl/web/javascript/reference/global_objects/math/sign/index.html new file mode 100644 index 0000000000..d6c21d59a1 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/sign/index.html @@ -0,0 +1,118 @@ +--- +title: Math.sign() +slug: Web/JavaScript/Referencje/Obiekty/Math/sign +translation_of: Web/JavaScript/Reference/Global_Objects/Math/sign +--- +
{{JSRef("Global_Objects", "Math")}}
+ +

Podsumowanie

+ +

Funkcja Math.sign() zwraca znak liczby. Wynik wskazuje czy liczba przekazana jako argument jest dodatnia, ujemna lub czy jest zerem.

+ +

Składnia

+ +
Math.sign(x)
+ +

Parametry

+ +
+
x
+
Liczba, której znak ma zostać określony.
+
+ +

Opis

+ +

Metoda sign powinna być zawsze używana jako Math.sign(), ponieważ jest metodą statyczną w obiekcie Math. (Nie jako metoda stworzonego obiektu  (Math nie jest konstruktorem)).

+ +

Funkcja ma pięć wartości wynikowych 1, -1, 0, -0, NaN, które reprezentują odpowiednio: "liczbę dodatnią", "liczbę ujemną", "zero "dodatnie"",  "zero "ujemne"" oraz NaN (parametr nie jest liczbą).

+ +

Argument funkcji jest domyślnie konwertowany do number.

+ +

Przykłady

+ +

Przykład: Użycie Math.sign

+ +
Math.sign(3)     //  1
+Math.sign(-3)    // -1
+Math.sign("-3")  // -1
+Math.sign(0)     //  0
+Math.sign(-0)    // -0
+Math.sign(NaN)   // NaN
+Math.sign("foo") // NaN
+Math.sign()      // NaN
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES6', '#sec-math.sign', 'Math.sign')}}{{Spec2('ES6')}}Initial definition.
+ +

Tabela zgodności przeglądarek

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatNo}}{{CompatGeckoDesktop("25")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatNo}}{{CompatGeckoMobile("25")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/sin/index.html b/files/pl/web/javascript/reference/global_objects/math/sin/index.html new file mode 100644 index 0000000000..56d31ef74c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/sin/index.html @@ -0,0 +1,51 @@ +--- +title: Math.sin() +slug: Web/JavaScript/Referencje/Obiekty/Math/sin +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/sin +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca sinus danej liczby.

+ +

Składnia

+ +
Math.sin(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Metoda sin zwraca wartość numeryczną większą lub równą -1 i mniejszą lub równą 1, stanowiącą sinus argumentu.

+ +

Ponieważ sin jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.sin(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.sin()

+ +
Math.sin(0);           // 0
+Math.sin(1);           // 0.8414709848078965
+
+Math.sin(Math.PI / 2); // 1
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/sqrt/index.html b/files/pl/web/javascript/reference/global_objects/math/sqrt/index.html new file mode 100644 index 0000000000..76c5b33a3e --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/sqrt/index.html @@ -0,0 +1,46 @@ +--- +title: Math.sqrt() +slug: Web/JavaScript/Referencje/Obiekty/Math/sqrt +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/sqrt +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca pierwiastek kwadratowy danej liczby.

+ +

x0,Math.sqrt(x)=x=the uniquey0such thaty2=x\forall x \geq 0, \mathtt{Math.sqrt(x)} = \sqrt{x} = \text{the unique} \; y \geq 0 \; \text{such that} \; y^2 = x

+ +

Składnia

+ +
Math.sqrt(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Jeśli wartość x jest ujemna, funkcja sqrt zwraca {{jsxref("NaN")}}.

+ +

Ponieważ sqrt() jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.sqrt(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.sqrt()

+ +
Math.sqrt(9); // 3
+Math.sqrt(2); // 1.414213562373095
+
+Math.sqrt(1);  // 1
+Math.sqrt(0);  // 0
+Math.sqrt(-1); // NaN
+ +

 

diff --git a/files/pl/web/javascript/reference/global_objects/math/sqrt1_2/index.html b/files/pl/web/javascript/reference/global_objects/math/sqrt1_2/index.html new file mode 100644 index 0000000000..224739b4ce --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/sqrt1_2/index.html @@ -0,0 +1,39 @@ +--- +title: Math.SQRT1 2 +slug: Web/JavaScript/Referencje/Obiekty/Math/SQRT1_2 +tags: + - JavaScript + - Math + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Math/SQRT1_2 +--- +

{{jsref}}

+ +

Podsumowanie

+ +

Pierwiastek kwadratowy z liczby 1/2, albo, inaczej mówiąc, odwrotność pierwiastka kwadratowego z liczby 2, w przybliżeniu 0.707.

+ +

Math.SQRT1_2=12=120.707\mathtt{\mi{Math.SQRT1_2}} = \sqrt{\frac{1}{2}} = \frac{1}{\sqrt{2}} \approx 0.707

+ +

Opis

+ +

Ponieważ SQRT1_2 jest statyczną własnością obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.SQRT1_2, a nie jak do własności instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.SQRT1_2

+ +

Poniższa funkcja zwraca pierwiastek kwadratowy z 1/2:

+ +
function getRoot1_2() {
+   return Math.SQRT1_2
+}
+
+getRoot1_2(); // 0.7071067811865476
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/sqrt2/index.html b/files/pl/web/javascript/reference/global_objects/math/sqrt2/index.html new file mode 100644 index 0000000000..6f247b5abe --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/sqrt2/index.html @@ -0,0 +1,41 @@ +--- +title: Math.SQRT2 +slug: Web/JavaScript/Referencje/Obiekty/Math/SQRT2 +tags: + - JavaScript + - Math + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Math/SQRT2 +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Pierwiastek kwadratowy z liczby 2, w przybliżeniu 1.414.

+ +

Math.SQRT2=21.414\mathtt{\mi{Math.SQRT2}} = \sqrt{2} \approx 1.414

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

Opis

+ +

Ponieważ SQRT2 jest statyczną własnością obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez {{jsxref("Math")}}.SQRT2, a nie jak do własności instancji obiektu Math utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.SQRT2

+ +

Poniższa funkcja zwraca pierwiastek kwadratowy z liczby 2:

+ +
function getRoot2() {
+   return Math.SQRT2;
+}
+
+getRoot2(); // 1.4142135623730951
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/math/tan/index.html b/files/pl/web/javascript/reference/global_objects/math/tan/index.html new file mode 100644 index 0000000000..844ca8cf12 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/math/tan/index.html @@ -0,0 +1,53 @@ +--- +title: Math.tan() +slug: Web/JavaScript/Referencje/Obiekty/Math/tan +tags: + - JavaScript + - Math + - Method +translation_of: Web/JavaScript/Reference/Global_Objects/Math/tan +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca tangens danej liczby.

+ +

Składnia

+ +
Math.tan(x)
+ +

Parametry

+ +
+
x 
+
liczba.
+
+ +

Opis

+ +

Metoda tan zwraca wartość numeryczną reprezentującą tangens kąta.

+ +

Ponieważ tan() jest statyczną metodą obiektu {{jsxref("Math")}}, zawsze odwołujemy się do niej poprzez Math.tan(), a nie jak do metody instancji obiektu {{jsxref("Math")}} utworzonej przez użytkownika.

+ +

Przykłady

+ +

Przykład: Zastosowanie Math.tan()

+ +

Poniższa funkcja zwraca tangens zmiennej x:

+ +
function getTan(x) {
+   return Math.tan(x)
+}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/nan/index.html b/files/pl/web/javascript/reference/global_objects/nan/index.html new file mode 100644 index 0000000000..738e9a2a01 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/nan/index.html @@ -0,0 +1,45 @@ +--- +title: NaN +slug: Web/JavaScript/Referencje/Obiekty/NaN +tags: + - Dokumentacja_JavaScript + - Dokumentacje + - JavaScript + - Wszystkie_kategorie +translation_of: Web/JavaScript/Reference/Global_Objects/NaN +--- +
+
+
{{jsSidebar("Obiekty")}}
+
+
+ +

Podsumowanie

+ +

Wartość reprezentująca + Not-A-Number + , tj. nie będąca liczbą.

+ +

Składnia

+ +
NaN
+ +

Opis

+ +

NaN jest własnością najwyższego rzędu i nie jest powiązana z żadnym obiektem.

+ +

Wartością początkową NaN jest NaN.

+ +

NaN nigdy nie jest równa innej liczbie, nie jest równa nawet samej sobie. Nie jest możliwe sprawdzenie, czy dana wartość jest NaN przez porównanie z {{jsxref("Number.NaN")}} – należy zamiast tego stosować funkcję {{jsxref("Obiekty.isNaN", "isNaN()")}}.

+ +

Wiele metod języka JavaScript (m. in. konstruktor Number, parseFloat i parseInt) zwracają NaN, jeśli wartość ich parametrów nie jest liczbą lub nie daje się na liczbę skonwertować.

+ +

NaN można zastosować do zasygnalizowania błędu w funkcji, która zazwyczaj zwraca poprawną liczbę.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/null/index.html b/files/pl/web/javascript/reference/global_objects/null/index.html new file mode 100644 index 0000000000..34e20e399c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/null/index.html @@ -0,0 +1,134 @@ +--- +title: 'null' +slug: Web/JavaScript/Referencje/Obiekty/null +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/null +--- +
{{jsSidebar("Objects")}}
+ +

Wartość null reprezentuje zamierzony brak wartości jakiegoś obiektu. Jest jedną z {{Glossary("Primitive", "podstawowych wartości")}} w JavaSript.

+ +

Składnia

+ +
null 
+ +

Opis

+ +

Wartość null, jak podpowiada nazwa, zapisujemy używając słowa "null". null nie jest zmienną globalną, w przeciwieństwie do {{jsxref("Global_Objects/undefined","undefined")}}. Zamiast tego null wyraża brak identyfikacji, mówiąc nam, że zmienna nie wskazuje na obiekt. W wielu API null jest często zwracany tam, gdzie może być obiekt, ale aktualnie jeszcze go tam nie ma.

+ +
// foo nie istnieje. Nie jest zdefiniowany oraz nigdy nie był zainicjalizowany:
+> foo
+"ReferenceError: foo is not defined"
+
+// Teraz wiadomo że null istnieje, ale nie ma on żadnego typu ani wartości:
+> var foo = null; foo;
+"null"
+
+ +

Różnice pomiędzy null i undefined

+ +

Podczas sprawdzania null lub undefined, uważaj na róźnice pomiędzy operatorami równości (==) oraz identyczności (===), ponieważ ten pierwszy wykonuje konwersję typu.

+ +
typeof null        // "object" (nie jest to "null" ze względu na starsze przyczyny)
+typeof undefined   // "undefined"
+null === undefined // false
+null  == undefined // true
+null === null // true
+null == null // true
+!null // true
+isNaN(1 + null) // false
+isNaN(1 + undefined) // true
+ +

 

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES1')}}{{Spec2('ES1')}}Definicja początkowa.
{{SpecName('ES5.1', '#sec-4.3.11', 'null value')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-null-value', 'null value')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-null-value', 'null value')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarką

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/epsilon/index.html b/files/pl/web/javascript/reference/global_objects/number/epsilon/index.html new file mode 100644 index 0000000000..289e33ad79 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/epsilon/index.html @@ -0,0 +1,76 @@ +--- +title: Number.EPSILON +slug: Web/JavaScript/Referencje/Obiekty/Number/EPSILON +tags: + - ECMAScript 2015 + - JavaScript + - Number + - Właściwość +translation_of: Web/JavaScript/Reference/Global_Objects/Number/EPSILON +--- +
{{JSRef}}
+ +

Właściwość Number.EPSILON reprezentuje różnicę pomiędzy 1 a najmniejszą liczbą zmiennoprzecinkową większą niż 1.

+ +

Jest to właściwość statyczna. Nie musisz tworzyć obiektu {{jsxref("Number")}}, żeby mieć do niej dostęp (użyj Number.EPSILON).

+ +
{{EmbedInteractiveExample("pages/js/number-epsilon.html")}}
+ + + +
{{js_property_attributes(0, 0, 0)}}
+ +

Opis

+ +

Wartość właściwości EPSILON to w przybliżeniu  2.2204460492503130808472633361816E-16 lub 2-52.

+ +

Przykłady

+ +

Testowanie równości

+ +
x = 0.2;
+y = 0.3;
+z = 0.1;
+equal = (Math.abs(x - y + z) < Number.EPSILON);
+
+ +

Polyfill

+ +
if (Number.EPSILON === undefined) {
+    Number.EPSILON = Math.pow(2, -52);
+}
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES2015', '#sec-number.epsilon', 'Number.EPSILON')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ESDraft', '#sec-number.epsilon', 'Number.EPSILON')}}{{Spec2('ESDraft')}}
+ +

Kompatybilność

+ + + +

{{Compat("javascript.builtins.Number.EPSILON")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/index.html b/files/pl/web/javascript/reference/global_objects/number/index.html new file mode 100644 index 0000000000..78fc243a0b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/index.html @@ -0,0 +1,111 @@ +--- +title: Number +slug: Web/JavaScript/Referencje/Obiekty/Number +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/Number +--- +
{{JSRef}}
+ +

Podsumowanie

+ +

Pozwala pracować z wartościami liczbowymi. Obiekt Number jest opakowaniem (ang.wrapper ) dla prymitywnych wartości numerycznych.

+ +

Tworzone przez

+ +

Konstruktor Number:

+ +
new Number(value);
+ +

Parametry

+ +
+
value 
+
Wartość numeryczna tworzonego obiektu.
+
+ +

Opis

+ +

Obiekt Number jest głównie stosowany do:

+ + + + + +

Własności Number są własnościami jego klasy, nieindywidualnymi własnościami obiektu.

+ +

JavaScript 1.2: Number(x) teraz tworzy raczej NaN niż błąd jeśli x jest ciągiem znaków, który nie zawiera poprawnie sformatowanej liczby. Na przykład, poniższy kod drukuje NaN:

+ +
var x = Number("three");
+document.write(x + "<BR>");
+
+ +

Możesz przekonwertować, każdy obiekt na liczbę używając funkcji wysokiego poziomu Number.

+ +

Własności

+ +
+
{{jsxref("Number.constructor")}}
+
Oznacza funkcję, która tworzy prototyp obiektu.
+
{{jsxref("Number.MAX_VALUE")}}
+
Największa możliwa do przedstawienia liczba.
+
{{jsxref("Number.MIN_VALUE")}}
+
Najmniejsza możliwa do przedstawienia liczba.
+
{{jsxref("Number.NaN")}}
+
Specjalna wartość "nie jest liczbą" (Not-a-Number).
+
{{jsxref("Number.NEGATIVE_INFINITY")}}
+
Specjalna wartość reprezentująca negatywną nieskończoność; zwracana przy przepełnieniu.
+
{{jsxref("Number.POSITIVE_INFINITY")}}
+
Specjalna wartość reprezentująca nieskończoność; zwracana przy przepełnieniu.
+
{{jsxref("Number.prototype")}}
+
Pozwala na dodawanie (tworzenie) nowych własności obiektu Number.
+
+ +

Metody

+ +

{{jsxref("Number.isInteger()")}}

+ +

     Sprawdza czy liczba jest całkowita.

+ +
+
{{jsxref("Number.toExponential()")}}
+
Zwraca ciąg znaków, reprezentujący liczbę zapisaną w postaci wykładniczej.
+
{{jsxref("Number.toFixed()")}}
+
Zwraca ciąg znaków, reprezentujący liczbę stałoprzecinkową.
+
{{jsxref("Number.toLocaleString()")}}
+
Zwraca czytelny dla ludzi ciąg znaków reprezentujący liczbę zapisaną przy wykorzystaniu lokalnego formatu zapisu liczb. Przesłania metodę {{jsxref("Object.toLocaleString()")}}.
+
{{jsxref("Number.toPrecision()")}}
+
Zwraca ciąg znaków reprezentujący liczbę stałoprzecinkową o podanej precyzji.
+
{{jsxref("Number.toSource()")}}
+
Zwraca literał obiektu reprezentujący podany obiekt Number; możesz użyć tą wartość, przy tworzeniu nowego obiektu. Przesłania metodę {{jsxref("Object.toSource()")}}.
+
{{jsxref("Number.toString()")}}
+
Zwraca ciąg znaków reprezentujący podany obiekt. Przesłania metodę {{jsxref("Object.toString()")}}.
+
{{jsxref("Number.valueOf()")}}
+
Zwraca zmienną typu prostego reprezentującą wartość podanego obiektu. Przesłania metodę {{jsxref("Object.valueOf()")}}.
+
+ +

Przykłady

+ +

Przykład: Zastosowanie obiektu Number, przy przypisaniu wartości zmiennym liczbowym

+ +

Poniższy przykład używa własności obiektu Number, aby przypisać wartości do kilku wartości numerycznych:

+ +
var najwiekszaLiczba = Number.MAX_VALUE;
+var najmniejszaLiczba = Number.MIN_VALUE;
+var nieskonczonosc = Number.POSITIVE_INFINITY;
+var negatywnaNieskonczonosc = Number.NEGATIVE_INFINITY;
+var nieJestLiczba = Number.NaN;
+
+ +

Przykład: Zastosowanie obiektu Number do modyfikacji wszystkich obiektów Number

+ +

Poniższy przykład tworzy obiekt typu Number, <code>.mojaLiczba</code>, wtedy dodaje własność opis, wszystkim obiektom Number. Następnie wartość jest przypisana do własności opis obiektu mojaLiczba.

+ +
var mojaLiczba = new Number(65);
+Number.prototype.opis = null;
+var mojaLiczba.opis = "prędkość wiatru";
+
diff --git a/files/pl/web/javascript/reference/global_objects/number/isinteger/index.html b/files/pl/web/javascript/reference/global_objects/number/isinteger/index.html new file mode 100644 index 0000000000..aaf93ab5fb --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/isinteger/index.html @@ -0,0 +1,88 @@ +--- +title: Number.isInteger() +slug: Web/JavaScript/Referencje/Obiekty/Number/isInteger +translation_of: Web/JavaScript/Reference/Global_Objects/Number/isInteger +--- +
{{JSRef}}
+ +

Metoda Number.isInteger() sprawdza czy wpisana wartość jest liczbą całkowitą.

+ +

Syntax

+ +
Number.isInteger(value)
+ +

Parametry

+ +
+
zmienna
+
Zmienna będzie testowana jako liczba.
+
+ +

Zwracana wartość

+ +

Metoda zwraca wartość typu {{jsxref("Boolean")}}.

+ +

Opis

+ +

Jeśli sprawdzana zmienna jest liczbą całkowitą metoda zwraca true, w innym przypadku zwraca false. Jeśli zmienna jest typu {{jsxref("NaN")}} lub spoza zakresu metoda zwraca false.

+ +

Przykłady

+ +
Number.isInteger(0);         // true
+Number.isInteger(1);         // true
+Number.isInteger(-100000);   // true
+
+Number.isInteger(0.1);       // false
+Number.isInteger(Math.PI);   // false
+
+Number.isInteger(NaN);       // false
+Number.isInteger(Infinity);  // false
+Number.isInteger(-Infinity); // false
+Number.isInteger('10');      // false
+Number.isInteger(true);      // false
+Number.isInteger(false);     // false
+Number.isInteger([1]);       // false
+
+ +

Polyfill

+ +
Number.isInteger = Number.isInteger || function(value) {
+  return typeof value === 'number' &&
+    isFinite(value) &&
+    Math.floor(value) === value;
+};
+
+ +

Dokumentacja

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES6', '#sec-number.isinteger', 'Number.isInteger')}}{{Spec2('ES6')}}Initial definition.
{{SpecName('ESDraft', '#sec-number.isinteger', 'Number.isInteger')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilne przegladarki

+ + + +

{{Compat("javascript.builtins.Number.isInteger")}}

+ +

Sprawdź również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/isnan/index.html b/files/pl/web/javascript/reference/global_objects/number/isnan/index.html new file mode 100644 index 0000000000..ddb723b409 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/isnan/index.html @@ -0,0 +1,108 @@ +--- +title: Number.isNaN() +slug: Web/JavaScript/Referencje/Obiekty/Number/isNaN +tags: + - ECMAScript 2015 + - JavaScript + - Metodă + - NaN + - Number + - isNaN +translation_of: Web/JavaScript/Reference/Global_Objects/Number/isNaN +--- +
{{JSRef}}
+ +

Metoda Number.isNaN() określa czy podany parametr ma wartość {{jsxref("NaN")}} i czy jest typu {{jsxref("Number")}}. Jest to ulepszona wersja oryginalnej, globalne funkcji {{jsxref("isNaN", "isNaN()")}}.

+ +
{{EmbedInteractiveExample("pages/js/number-isnan.html", "taller")}}
+ + + +

Składnia

+ +
Number.isNaN(value)
+ +

Parametry

+ +
+
value
+
Wartość, którą będziemy testować {{jsxref("NaN")}}.
+
+ +

Zwracana wartość

+ +

true, jeśli podana wartość jest {{jsxref("NaN")}}, a jej typem jest {{jsxref("Number")}}; w przeciwnym razie, false.

+ +

Opis

+ +

Ponieważ oba operatory porównania, {{jsxref("Operators/Comparison_Operators", "==", "#Equality")}} i {{jsxref("Operators/Comparison_Operators", "===", "#Identity")}}, dla zapytania czy {{jsxref("NaN")}} jest równe {{jsxref("NaN")}} zwracają false funkcja Number.isNaN() staje się niezbędna. Jest sytuacja wyjątkowa i nie występuje, gdy porównujemy dowolne inne wartości w języku JavaScript.

+ +

W porównaniu do funkcji globalnej {{jsxref("isNaN", "isNaN()")}}, metoda Number.isNaN() nie ma problemu z usilnym konwertowaniem parametru na liczbę. To oznacza, że można bezpiecznie przekazywać wartości, które normalnie mogłyby zostać skonwertowane na {{jsxref("NaN")}}, ale nie mają tej samej wartości co {{jsxref("NaN")}}. To również oznacza, że jedynie wartości typu {{jsxref("Number")}}, które są również {{jsxref("NaN")}}, zwrócą true.

+ +

Przykłady

+ +
Number.isNaN(NaN);        // true
+Number.isNaN(Number.NaN); // true
+Number.isNaN(0 / 0);      // true
+
+// Gdybyśmy użyli funkcji isNaN(), te przykłady zwróciłby true
+Number.isNaN('NaN');      // false
+Number.isNaN(undefined);  // false
+Number.isNaN({});         // false
+Number.isNaN('blabla');   // false
+
+// Wszystkie zwracają false
+Number.isNaN(true);
+Number.isNaN(null);
+Number.isNaN(37);
+Number.isNaN('37');
+Number.isNaN('37.37');
+Number.isNaN('');
+Number.isNaN(' ');
+
+ +

Polyfill

+ +

Następujący przykład działa, ponieważ {{jsxref("NaN")}} jest jedyną wartością w języku JavaScript, która nie jest równa samej sobie.

+ +
Number.isNaN = Number.isNaN || function(value) {
+    return value !== null && (value != value || +value != value);
+}
+
+ +

Opis

+ + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ESDraft', '#sec-number.isnan', 'Number.isnan')}}{{Spec2('ESDraft')}}
{{SpecName('ES2015', '#sec-number.isnan', 'Number.isnan')}}{{Spec2('ES2015')}}Initial definition.
+ +

Kompatybilność

+ + + +
{{Compat("javascript.builtins.Number.isNaN")}}
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/max_value/index.html b/files/pl/web/javascript/reference/global_objects/number/max_value/index.html new file mode 100644 index 0000000000..4ec6b77eb3 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/max_value/index.html @@ -0,0 +1,35 @@ +--- +title: Number.MAX_VALUE +slug: Web/JavaScript/Referencje/Obiekty/Number/MAX_VALUE +tags: + - JavaScript + - Number + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Number/MAX_VALUE +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Największa liczba, której reprezentacja jest możliwa w języku JavaScript.

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

Opis

+ +

Własność MAX_VALUE ma wartość ok. 1.79E+308. Wartości większe niż MAX_VALUE są reprezentowane jako "Infinity" (nieskończoność).

+ +

Ponieważ MAX_VALUE jest statyczną własnością {{jsxref("Number")}}, używa jej się zawsze jako Number.MAX_VALUE, a nie jako własność utworzonego przez programistę obiektu {{jsxref("Number")}}.

+ +

Przykłady

+ +

Przykład: Zastosowanie MAX_VALUE

+ +

Poniższy kod mnoży dwie liczby. Jeśli wynik jest większy lub równy MAX_VALUE, wywoływana jest funkcja func1, w przeciwnym wypadku wywoływana jest funkcja func2.

+ +
if (num1 * num2 <= Number.MAX_VALUE) {
+   func1();
+} else {
+   func2();
+}
+
diff --git a/files/pl/web/javascript/reference/global_objects/number/min_value/index.html b/files/pl/web/javascript/reference/global_objects/number/min_value/index.html new file mode 100644 index 0000000000..7010abe1af --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/min_value/index.html @@ -0,0 +1,39 @@ +--- +title: Number.MIN VALUE +slug: Web/JavaScript/Referencje/Obiekty/Number/MIN_VALUE +tags: + - JavaScript + - Number + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Number/MIN_VALUE +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Najmniejsza dodatnia wartość liczbowa, której reprezentacja jest możliwa w języku JavaScript.

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

Opis

+ +

Własność MIN_VALUE to najbliższa zeru liczba dodatnia, jakiej reprezentacja jest możliwa w języku JavaScript - nie jest to najmniejsza liczba ujemna.

+ +

MIN_VALUE ma wartość ok. 5e-324. Wartości mniejsze niż MIN_VALUE (ang. "underflow values") konwertowane są do 0.

+ +

Ponieważ MIN_VALUE jest statyczną własnością {{jsxref("Number")}}, używa jej się zawsze jako Number.MIN_VALUE, a nie jako własność utworzonego przez programistę obiektu {{jsxref("Number")}}.

+ +

Przykłady

+ +

Przykład: Zastosowanie Number.MIN_VALUE

+ +

Poniższy kod dzieli jedną liczbę przez drugą. Jeśli wynik jest większy lub równy MIN_VALUE, wywoływana jest funkcja func1, w przeciwnym wypadku wywoływana jest funkcja func2.

+ +
if (num1 / num2 >= Number.MIN_VALUE) {
+   func1();
+} else {
+   func2();
+}
+
+ +
 
diff --git a/files/pl/web/javascript/reference/global_objects/number/nan/index.html b/files/pl/web/javascript/reference/global_objects/number/nan/index.html new file mode 100644 index 0000000000..987a48ee6d --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/nan/index.html @@ -0,0 +1,48 @@ +--- +title: Number.NaN +slug: Web/JavaScript/Referencje/Obiekty/Number/NaN +tags: + - JavaScript + - Number + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Number/NaN +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Wartość reprezentująca Not-A-Number (Nie-Liczbę).

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

Opis

+ +

Wartością Number.NaN jest Not-A-Number, taką samą jak wartość własności {{jsxref("Obiekty/NaN", "NaN")}} obiektu globalnego.

+ +

Keep text below in sync with Properties:NaN page NaN jest zawsze różna od dowolnej liczby, włączając również NaN; nie możesz sprawdzić wartości nieliczbowej poprzez porównanie do Number.NaN. Użyj zamiast tego funkcji {{jsxref("Obiekty/isNaN", "isNaN()")}}.

+ +

Kilka metod JavaScript (takie jak konstruktor Number, parseFloat i parseInt) zwracają NaN, jeśli wartość określona w parametrze nie może być przetworzona jako liczba.

+ +

Możesz użyć własności NaN, aby wskazać warunek błędu dla Twojej funkcji, która zwraca liczbę w przypadku sukcesu.

+ +

JavaScript wyświetla wartość Number.NaN jako NaN.

+ +

Przykłady

+ +

Przykład: Zastosowanie Number.NaN

+ +

W poniższym przykładzie, jeśli miesiąc (month) jest wartość większą niż 12, zostaje mu przypisane NaN i wyświetlana jest informacja o nieprawidłowych wartościach.

+ +
var month = 13;
+if (month < 1 || month > 12) {
+   month = Number.NaN;
+   console.log("Miesiąc musi być liczbą między 1 i 12.");
+}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/negative_infinity/index.html b/files/pl/web/javascript/reference/global_objects/number/negative_infinity/index.html new file mode 100644 index 0000000000..90de86af6d --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/negative_infinity/index.html @@ -0,0 +1,53 @@ +--- +title: Number.NEGATIVE INFINITY +slug: Web/JavaScript/Referencje/Obiekty/Number/NEGATIVE_INFINITY +tags: + - JavaScript + - Number + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Number/NEGATIVE_INFINITY +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Wartość reprezentująca ujemną nieskończoność.

+ +

Opis

+ +

Wartość własności Number.NEGATIVE_INFINITY jest taka sama jak ujemna wartość własności {{jsxref("Infinity")}} obiektu globalnego.

+ +

Wartość ta zachowuje się nieco inaczej niż matematyczna nieskończoność:

+ + + +

Własności Number.NEGATIVE_INFINITY można użyć do wskazania błędu warunku, który zwraca liczbę skończoną w przypadku powodzenia. Należy jednak zauważyć, że funkcja {{jsxref("Obiekty/isFinite", "isFinite")}} będzie w tym wypadku bardziej odpowiednia.

+ +

Przykład

+ +

W poniższym przykładzie do zmiennej smallNumber została przypisana wartość mniejsza niż wartość minimalna. Gdy zostaje wykonana instrukcja if, smallNumber posiada wartość "-Infinity", więc przed kontynuowaniem do zmiennej smallNumber jest przypisywana bardziej wykonywalna wartość.

+ +
var smallNumber = (-Number.MAX_VALUE) * 2;
+
+if (smallNumber == Number.NEGATIVE_INFINITY) {
+ smallNumber = returnFinite();
+}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/positive_infinity/index.html b/files/pl/web/javascript/reference/global_objects/number/positive_infinity/index.html new file mode 100644 index 0000000000..e0be5b9e2a --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/positive_infinity/index.html @@ -0,0 +1,57 @@ +--- +title: Number.POSITIVE INFINITY +slug: Web/JavaScript/Referencje/Obiekty/Number/POSITIVE_INFINITY +tags: + - JavaScript + - Number + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Number/POSITIVE_INFINITY +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Wartość reprezentująca dodatnią nieskończoność.

+ +
{{js_property_attributes(0, 0, 0)}}
+ +

Opis

+ +

Wartość własności Number.POSITIVE_INFINITY jest taka sama jak wartość własności {{jsxref("Infinity")}} obiektu globalnego.

+ +

Wartość ta zachowuje się nieco inaczej niż matematyczna nieskończoność:

+ + + +

Niektóre metody JavaScript (takie jak konstruktor Number, parseFloat i parseInt) zwracają wartość NaN, jeśli wartość określona w parametrze znacznie przewyższa wartość Number.MAX_VALUE.

+ +

Własności Number.POSITIVE_INFINITY można użyć do wskazania błędu warunku, który zwraca liczbę skończoną w przypadku powodzenia. Należy jednak zauważyć, że funkcja {{jsxref("Obiekty/isFinite", "isFinite")}} będzie w tym wypadku bardziej odpowiednia.

+ +

Przykład

+ +

W poniższym przykładzie do zmiennej largeNumber została przypisana wartość większa niż wartość maksymalna. Gdy zostaje wykonana instrukcja {{jsxref("Polecenia/if...else", "if")}}, largeNumber posiada wartość Infinity, więc przed kontynuowaniem do zmiennej bigNumber jest przypisywana bardziej wykonywalna wartość.

+ +
var bigNumber = Number.MAX_VALUE * 2;
+
+if (bigNumber == Number.POSITIVE_INFINITY) {
+ bigNumber = returnFinite();
+}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/toexponential/index.html b/files/pl/web/javascript/reference/global_objects/number/toexponential/index.html new file mode 100644 index 0000000000..1eef2782e4 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/toexponential/index.html @@ -0,0 +1,53 @@ +--- +title: Number.prototype.toExponential() +slug: Web/JavaScript/Referencje/Obiekty/Number/toExponential +tags: + - JavaScript + - Method + - Number + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Number/toExponential +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący Number w notacji wykładniczej.

+ +

Składnia

+ +
numObj.toExponential([fractionDigits])
+ +

Parametr

+ +
+
fractionDigits
+
Liczba całkowita określająca liczbę cyfr występujących po kropce dziesiętnej. Domyślną wartością jest tyle cyfr, ile potrzeba do określenia liczby.
+
+ +

Zwraca

+ +

Łańcuch znaków reprezentujący obiekt {{jsxref("Number")}} w notacji wykładniczej z jedną cyfrą przed kropką dziesiętną i zaokrągleniem do tylu cyfr po kropce, ile określa parametr fractionDigits. Jeśli argument fractionDigits zostanie pominięty, domyślnie przyjmowana jest taka wartość zaokrąglenia, która pozwala na przedstawienie wartości w sposób unikatowy.

+ +

Jeśli metoda toExponential() zostanie użyta do literałów liczbowych, które nie posiadają wykładnika i kropki dziesiętnej, należy wstawić spację przed kropką poprzedzającą wywołanie metody, aby zapobiec zinterpretowaniu tej kropki jako kropki dziesiętnej.

+ +

Jeśli liczba posiada więcej cyfr niż określono przez parametr fractionDigits, jest ona zaokrąglana do najbliższej liczby o ilości cyfr wskazanej przez wartość fractionDigits. Zobacz dyskusję na temat zaokrąglania w opisie metody toFixed, która również odnosi się do metody toExponential().

+ +

Przykład

+ +
var num=77.1234;
+
+console.log("num.toExponential() is " + num.toExponential()); //wyświetla 7.71234e+1
+console.log("num.toExponential(4) is " + num.toExponential(4)); //wyświetla 7.7123e+1
+console.log("num.toExponential(2) is " + num.toExponential(2)); //wyświetla 7.71e+1
+console.log("77.1234.toExponential() is " + 77.1234.toExponential()); //wyświetla 7.71234e+1
+console.log("77 .toExponential() is " + 77 .toExponential()); //wyświetla 7.7e+1
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/tofixed/index.html b/files/pl/web/javascript/reference/global_objects/number/tofixed/index.html new file mode 100644 index 0000000000..9394bf1db9 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/tofixed/index.html @@ -0,0 +1,61 @@ +--- +title: Number.prototype.toFixed() +slug: Web/JavaScript/Referencje/Obiekty/Number/toFixed +tags: + - JavaScript + - Method + - Number + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Number/toFixed +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Formatuje liczbę stosując notację stałoprzecinkową.

+ +

Składnia

+ +
numObj.toFixed([digits])
+ +

Parametr

+ +
+
digits
+
Liczba cyfr, które mają zostać wyświetlone po kropce dziesiętnej; może to być wartość z zakresu od 0 do 20 włącznie, ale implementacje mogą opcjonalnie wprowadzać większe zakresy. Jeśli argument zostanie pominięty, przyjmowana jest wartość 0.
+
+ +

Zwraca

+ +

Reprezentację wartości number w postaci łańcucha znaków, która nie stosuje notacji wykładniczej i posiada dokładnie tyle cyfr po separatorze dziesiętnym, ile wskazuje na to wartość parametru digits. Liczba w razie konieczności jest zaokrąglana, a część ułamkowa wypełniana zerami, aby liczba posiadała określoną długość. Jeśli liczba number jest większa niż 1e+21, metoda ta po prostu wywołuje {{jsxref("Number.prototype.toString()")}} i zwraca łańcuch znaków w notacji wykładniczej.

+ +

Wyrzuca

+ +
+
{{jsxref("Obiekty/RangeError", "RangeError")}}
+
Jeśli wartość parametru digits jest za duża lub za mała. Wartości z zakresu od 0 do 20 włącznie nie spowodują wystąpienia {{jsxref("Obiekty/RangeError", "RangeError")}}. Dopuszcza się na obsługę mniejszych lub większych wartości przez różne implementacje.
+
+ +
+
{{jsxref("Obiekty/TypeError", "TypeError")}}
+
Jeśli ta metoda jest przywołana w obiekcie, który nie jest obiektem {{jsxref("Number")}}.
+
+ +

Przykłady

+ +
var n = 12345.6789;
+
+n.toFixed();              // zwraca 12346: zauważ zaokrąglenie i brak części ułamkowej
+n.toFixed(1);             // zwraca 12345.7: zauważ zaokrąglenie
+n.toFixed(6);             // zwraca 12345.678900: zauważ dodane zera
+(1.23e+20).toFixed(2);    // zwraca 123000000000000000000.00
+(1.23e-10).toFixed(2)     // zwraca 0.00
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/tolocalestring/index.html b/files/pl/web/javascript/reference/global_objects/number/tolocalestring/index.html new file mode 100644 index 0000000000..6ca88bba30 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/tolocalestring/index.html @@ -0,0 +1,182 @@ +--- +title: Number.prototype.toLocaleString() +slug: Web/JavaScript/Referencje/Obiekty/Number/toLocaleString +translation_of: Web/JavaScript/Reference/Global_Objects/Number/toLocaleString +--- +
{{JSRef}}
+ +

Metoda toLocaleString() zwraca łańcuch znaków przedstawiający dany numer w formacie wybranej lokalizacji.

+ +

Nowe argumenty - lokalizacje i opcje - pozwalają na wybranie lokalizacji w jakiej ma zostać przedstawiona liczba. Starsza implementacja, która nie posiadała tych argumentów, zwracała łańcuch znaków zależny od implementacji danego środowiska.

+ +

Składnia

+ +
numObj.toLocaleString([lokalizacje [, opcje]])
+ +

Parametry

+ +

W sekcji kompatybilności możesz sprawdzić, które przeglądarki obsługują argumenty lokalizacji i opcji . W sekcji Przykład: Sprawdzanie obsługi argumentów lokalizacji i opcji rozpisane są sposoby na przetestowanie obsługiwanych przez przeglądarkę argumentów tej metody.

+ +
+

Info: ECMAScript Internationalization API, zaimplementowane w Firefoxie 29, dodaje obsługę parametrylokalizacje do metodyNumber.toLocaleString(). Jeśli argument nie zostanie podany ({{jsxref("undefined")}}) metoda przyjmię lokalizację systemu operacyjnego. Poprzednie wersje Firefoxa zwracały liczby z lokalizacji Western Arabic. Zmiana zostala zgłoszona jako regresja rzutująca na wsteczną kompatybilność metody, i wkrótce zostanie naprawiona. ({{bug(999003)}})

+
+ +
{{page('/pl-PL/docs/Web/JavaScript/Reference/Global_Objects/NumberFormat', 'Parameters')}}
+ +

Zwracana wartość

+ +

Łańcuch znaków przedstawiający liczbę w danym formacie.

+ +

Przykłady

+ +

Przykłady użycia metody toLocaleString

+ +

Podstawowy sposób użycia, bez podanych argumentów, zwróci nam łańcuch znaków w domyślnej lokalizacji i z domyślnymi opcjami.

+ +
var liczba = 3500;
+
+console.log(liczba.toLocaleString()); // Wyświetli "3 500", jeśli twoją lokalizacją jest „pl-PL”
+
+ +

Sprawdzanie dostępności argumentów lokalizacji i opcji

+ +

Nie wszystkie przeglądarki obsługuję argumenty lokalizacji i opcji. Aby to sprawdzić w wersji języka ES5.1 i późniejszych możemy użyć wyjątku {{jsxref("Global_Objects/RangeError", "RangeError")}}, który zostanie rzucony gdy niepoprawna nazwa lokalizacji zostanie użyta:

+ +
function toLocaleStringSupportsLocales() {
+  var liczba = 0;
+  try {
+    liczba.toLocaleString('i');
+  } catch (e) {
+    return e.name === 'RangeError';
+  }
+  return false;
+}
+
+ +

W wersjach przed ES5.1 nie było obowiązku wyrzucania wyjątku Range Error jeśli metoda toLocaleString została wywołana z argumentami.

+ +

Sprawdzenie działające na wszystkich wersjach języka przed 5.1 polega na użyciu funkcjonalności niezbędnych do działania tych argumentów bezpośrednio na Number.prototype.toLocaleString:

+ +
function toLocaleStringSupportsOptions() {
+  return !!(typeof Intl == 'object' && Intl && typeof Intl.NumberFormat == 'function');
+}
+
+ +

Sprawdzamy tutaj czy istnieje globalny obiekt Intl, czy nie jest nullem, a także czy posiada właściwość NumberFormat, która jest funkcją.

+ +

Przykłady użycia lokalizacji

+ +

Przykład ten pokazuje kilka różnych lokalizacji. Aby uzyskać foramt języka interfejsu użytkownika upewnij się, że podajesz tę lokalizację (i dla pewności kilka innych jako fallbacki) przy pomocy aargumentu localizacji:

+ +
var liczba = 123456.789;
+
+// Język niemiecki oddziela części dziesiętne przecinkiem, a tysiące kropką
+console.log(liczba.toLocaleString('de-DE'));
+// → 123.456,789
+
+// W większości krajów arabskich używa cyfr Eastern Arabic
+console.log(liczba.toLocaleString('ar-EG'));
+// → ١٢٣٤٥٦٫٧٨٩
+
+// Indyjski używa separatorów tysięcy/lakh/crore
+console.log(liczba.toLocaleString('en-IN'));
+// → 1,23,456.789
+
+// Klucz rozszerzeń „nu” pyta o system numeryczny, np. Chiński system dziesiętny
+console.log(liczba.toLocaleString('zh-Hans-CN-u-nu-hanidec'));
+// → 一二三,四五六.七八九
+
+// jeśli masz zamiar użyć lokalizacji, która może nie być obsługiwana
+// jak np. Balinese, zawsze dodaj drugi lokalizację, tutaj Indonezyjską
+console.log(liczba.toLocaleString(['ban', 'id']));
+// → 123.456,789
+
+ +

Przykłady użycia opcji

+ +

Rezultaty metodytoLocaleString  mogą być dostosowywane przy pomocy argumentu opcje:

+ +
var liczba = 123456.789;
+
+// format walutowy
+console.log(liczba.toLocaleString('de-DE', { style: 'currency', currency: 'EUR' }));
+// → 123.456,79 €
+
+// Japoński yen
+console.log(liczba.toLocaleString('ja-JP', { style: 'currency', currency: 'JPY' }))
+// → ¥123,457
+
+// ogranicz wyświetlanie do 3 miejsc znaczących
+console.log(liczba.toLocaleString('en-IN', { maximumSignificantDigits: 3 }));
+// → 1,23,000
+
+// Użyj domyślnego języka hosta z opcjami formatowania liczby
+var num = 30000.65;
+console.log(num.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}));
+// → "30,000.65" w języku angielskim lub
+// → "30.000,65" w języku niemieckiem lub
+// → "30 000,65" w języku francuskim
+
+ +

Wydajność

+ +

Jeśli zamierzasz formatować wiele liczb, lepiej użyć obiektu {{jsxref("NumberFormat")}} i formatować przy pomocy metody {{jsxref("NumberFormat.format")}}.

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES3')}}{{Spec2('ES3')}}Pierwsza definicja. Zaimplementowane w JavaScript 1.5.
{{SpecName('ES5.1', '#sec-15.7.4.3', 'Number.prototype.toLocaleString')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-number.prototype.tolocalestring', 'Number.prototype.toLocaleString')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-number.prototype.tolocalestring', 'Number.prototype.toLocaleString')}}{{Spec2('ESDraft')}} 
{{SpecName('ES Int 1.0', '#sec-13.2.1', 'Number.prototype.toLocaleString')}}{{Spec2('ES Int 1.0')}} 
{{SpecName('ES Int 2.0', '#sec-13.2.1', 'Number.prototype.toLocaleString')}}{{Spec2('ES Int 2.0')}} 
{{SpecName('ES Int Draft', '#sec-Number.prototype.toLocaleString', 'Number.prototype.toLocaleString')}}{{Spec2('ES Int Draft')}} 
+ +

Kompatybilność

+ + + +

{{Compat("javascript.builtins.Number.toLocaleString")}}

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/toprecision/index.html b/files/pl/web/javascript/reference/global_objects/number/toprecision/index.html new file mode 100644 index 0000000000..33d5c0f1ed --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/toprecision/index.html @@ -0,0 +1,56 @@ +--- +title: Number.prototype.toPrecision() +slug: Web/JavaScript/Referencje/Obiekty/Number/toPrecision +tags: + - JavaScript + - Method + - Number + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Number/toPrecision +--- +

{{jsref}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący dany obiekt Number z określoną dokładnością.

+ +

Składnia

+ +
numObj.toPrecision([precision])
+ +

Parametr

+ +
+
precision
+
Liczba całkowita określająca liczbę cyfr po kropce dziesiętnej.
+
+ +

Zwraca

+ +

Łańcuch znaków reprezentujący obiekt {{jsxref("Number")}} w notacji stałoprzecinkowej lub wykładniczej z zaokrągleniem do tylu ważnych cyfr, ile wskazuje wartość precision.

+ +

Jeśli metoda toPrecision() zostanie użyta do literałów liczbowych, które nie posiadają wykładnika i kropki dziesiętnej, należy wstawić spację przed kropką poprzedzającą wywołanie metody, aby zapobiec zinterpretowaniu tej kropki jako kropki dziesiętnej.

+ +

Jeśli argument precision zostanie pominięty, metoda zachowuje się jak {{jsxref("Number.prototype.toString()")}}.

+ +

Jeśli liczba posiada więcej cyfr niż określono przez parametr precision, jest ona zaokrąglana do najbliższej liczby o ilości cyfr wskazanej przez wartość precision. Zobacz dyskusję na temat zaokrąglania w opisie metody {{jsxref("Number.prototype.toFixed()")}}, która również odnosi się do metody toPrecision.

+ +

Przykład

+ +
var num=5.123456;
+
+console.log("num.toPrecision() is " + num.toPrecision()); //wyświetli 5.123456
+console.log("num.toPrecision(4) is " + num.toPrecision(4)); //wyświetli 5.123
+console.log("num.toPrecision(2) is " + num.toPrecision(2)); //wyświetli  5.1
+console.log("num.toPrecision(1) is " + num.toPrecision(1)); //wyświetli 5
+console.log("1250 .toPrecision(2) is " + 1250 .toPrecision(2)); //wyświetli 1.3e+3
+console.log("1250 .toPrecision(5) is " + 1250 .toPrecision(5)); //wyświetli 1250.0
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/number/tostring/index.html b/files/pl/web/javascript/reference/global_objects/number/tostring/index.html new file mode 100644 index 0000000000..cd29571aee --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/number/tostring/index.html @@ -0,0 +1,59 @@ +--- +title: Number.prototype.toString() +slug: Web/JavaScript/Referencje/Obiekty/Number/toString +tags: + - JavaScript + - Method + - Number + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Number/toString +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący dany obiekt {{jsxref("Number")}}.

+ +

Składnia

+ +
numObj.toString([radix])
+ +

Parametr

+ +
+
radix
+
Liczba całkowita z zakresu od 2 do 36 określająca podstawę użytą do reprezentacji wartości liczbowych.
+
+ +

Opis

+ +

Obiekt Number przesłania metodę toString obiektu {{jsxref("Object")}}; nie dziedziczy {{jsxref("Object.prototype.toString()")}}. Dla obiektów Number metoda toString() zwraca łańcuch znaków reprezentujący obiekt w danej podstawie wyliczeń.

+ +

Metoda toString przetwarza pierwszy podany argument i próbuje zwrócić reprezentację w postaci łańcucha znaków w określonej podstawie wyliczeń. Dla podstawy większej od 10 litery alfabetu wskazują liczby większe niż 9. Przykładowo dla liczb heksadecymalnych (podstawa 16) użyte zostaną litery od A do F.

+ +

Jeśli jako argument toString() podano podstawę nie będącą w zakresie od 2 do 36, zostanie wywołany wyjątek.

+ +

Jeśli podstawa nie została określona, JavaScript przyjmuje za podstawę wartość 10.

+ +

Przykłady

+ +
var count = 10;
+
+console.log(count.toString());    // displays '10'
+console.log((17).toString());     // displays '17'
+
+var x = 6;
+
+console.log(x.toString(2));       // displays '110'
+console.log((254).toString(16));  // displays 'fe'
+
+console.log((-10).toString(2));   // displays '-1010'
+console.log((-0xff).toString(2)); // displays '-11111111'
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/assign/index.html b/files/pl/web/javascript/reference/global_objects/object/assign/index.html new file mode 100644 index 0000000000..81e764456a --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/assign/index.html @@ -0,0 +1,307 @@ +--- +title: Object.assign() +slug: Web/JavaScript/Referencje/Obiekty/Object/assign +translation_of: Web/JavaScript/Reference/Global_Objects/Object/assign +--- +
{{JSRef}}
+ +

Metoda Object.assign() kopiuje wszystkie wartości wyliczalnych własnych właściwości z jednego lub więcej obiektów źródłowych do obiektu docelowego. Zwraca obiekt docelowy.

+ +

Składnia

+ +
Object.assign(cel, ...zrodla)
+ +

Parameters

+ +
+
cel
+
Obiekt docelowy.
+
zrodla
+
Obiekt(y) żródłowe.
+
+ +

Zwracana wartość

+ +

Obiekt docelowy.

+ +

Opis

+ +

Właściwości w obiekcie docelowym zostaną nadpisane właściwościami obiektów źródłowych, jeśli właściwości te mają takie same nazwy. Właściwości obiektów źródłowych występujących później na liście argumentów, podobnie, nadpiszą właściwości obiektów występujących wcześniej.

+ +

Metoda Object.assign() jedynie kopiuje wyliczalnewłasne właściwości z obiektów źródłowych do obiektu docelowego. Używa do tego [[Get]] na źródle oraz [[Set]] na obiekcie docelowym, więc wywołuje gettery i settery odpowiednich obiektów. Dlatego też mowa tu o przypisaniu właściwości, a nie o ich kopiowaniu czy tworzeniu nowych. Metoda ta może być więc nieodpowiednia do przyłączania nowych właściwości do prototypu, w przypadku gdy źródła przyłączenia zawierają gettery. Do kopiowania definicji właściwości, wliczając ich wyliczalność, do prototypów należy użyć {{jsxref("Object.getOwnPropertyDescriptor()")}} oraz {{jsxref("Object.defineProperty()")}}.

+ +

Obie właściwości {{jsxref("String")}} jak i {{jsxref("Symbol")}} są kopiowane.

+ +

W przypadku błędu, na przykład gdy wartość jest zabezpieczona przed zapisem, zostanie rzucony błąd {{jsxref("TypeError")}}, a obiekt docelowy może zostać zmieniony, jeśli jakieś właściwości zostały do niego dodane przed wystąpieniem błędu.

+ +

Zauważ, że Object.assign() nie rzuci błędu, gdy źródłem jest {{jsxref("null")}} lub {{jsxref("undefined")}}.

+ +

Przykłady

+ +

Klonowanie obiektu

+ +
var obiekt = { a: 1 };
+var kopia = Object.assign({}, obiekt);
+console.log(kopia); // { a: 1 }
+
+ +

Ostrzeżenie przed Głębokim Klonowaniem

+ +

W przypadku głębokiego klonowania musimy użyć innych sposóbów, ponieważ Object.assign() kopiuje jedynie wartości przechowywane we właściwościach. Jeżeli właściwość źródłowa jest referencją do obiektu, to skopiowana zostanie jedynie ta referencja (wówczas zarówno źródło jak i cel będą posiadać referencję do tego samego obiektu, a nie osobne kopie tych obiektów).

+ +
function test() {
+  'use strict';
+
+  let obj1 = { a: 0 , b: { c: 0}};   // a: wartość, b: referencja, c: wartość
+  let obj2 = Object.assign({}, obj1);
+  console.log(JSON.stringify(obj2)); // { a: 0, b: { c: 0}}
+
+  obj1.a = 1; // zmiana wartości, dotyczy tylko obj1
+  console.log(JSON.stringify(obj1)); // { a: 1, b: { c: 0}}
+  console.log(JSON.stringify(obj2)); // { a: 0, b: { c: 0}}
+
+  obj2.a = 2; // zmiana wartości, dotyczy tylko obj2
+  console.log(JSON.stringify(obj1)); // { a: 1, b: { c: 0}}
+  console.log(JSON.stringify(obj2)); // { a: 2, b: { c: 0}}
+
+  obj2.b.c = 3; // zmiana wartości w obiekcie o współdzielonej referencji
+  console.log(JSON.stringify(obj1)); // { a: 1, b: { c: 3}} // teraz b.c == 3
+  console.log(JSON.stringify(obj2)); // { a: 2, b: { c: 3}} // i tu też b.c == 3, bo obj1.b === obj2.b
+
+  // Klonowanie głębokie
+  obj1 = { a: 0 , b: { c: 0}};
+  let obj3 = JSON.parse(JSON.stringify(obj1));
+  obj1.a = 4;
+  obj1.b.c = 4;
+  console.log(JSON.stringify(obj3)); // { a: 0, b: { c: 0}} // obj1.b !== obj2.b
+}
+
+test();
+ +

Łączenie obiektów

+ +
var o1 = { a: 1 };
+var o2 = { b: 2 };
+var o3 = { c: 3 };
+
+var obj = Object.assign(o1, o2, o3);
+console.log(obj); // { a: 1, b: 2, c: 3 }
+console.log(o1);  // { a: 1, b: 2, c: 3 }, sam obiekt docelowy został zmieniony.
+ +

Łączenie obiektów z tymi samymi właściowściami

+ +
var o1 = { a: 1, b: 1, c: 1 };
+var o2 = { b: 2, c: 2 };
+var o3 = { c: 3 };
+
+var obj = Object.assign({}, o1, o2, o3);
+console.log(obj); // { a: 1, b: 2, c: 3 }
+ +

Właściwość jest nadpisywana przez ostatni obiekt w liście parametrów, który ma taką samą właściwość.

+ +

Kopiowanie właściwości-symboli

+ +
var o1 = { a: 1 };
+var o2 = { [Symbol('foo')]: 2 };
+
+var obj = Object.assign({}, o1, o2);
+console.log(obj); // { a : 1, [Symbol("foo")]: 2 } (cf. bug 1207182 on Firefox)
+Object.getOwnPropertySymbols(obj); // [Symbol(foo)]
+
+ +

Właściwości nieprzeliczalne oraz te z łańcucha prototypów nie są kopiowane

+ +
var obj = Object.create({ foo: 1 }, { // foo jest właściwością prototypu obiektu obj
+  bar: {
+    value: 2  // bar jest nieprzeliczalną właściwością
+  },
+  baz: {
+    value: 3,
+    enumerable: true  // baz jest własną, przeliczalną właściwością obiektu obj
+  }
+});
+
+var kopia = Object.assign({}, obj);
+console.log(kopia); // { baz: 3 }
+
+ +

Wartości podstawowe zostaną włożone do ich wrapperów

+ +
var v1 = 'abc';
+var v2 = true;
+var v3 = 10;
+var v4 = Symbol('foo');
+
+var obj = Object.assign({}, v1, null, v2, undefined, v3, v4);
+// Wartości podstawowe będą we wrapperach, null i undefined zostaną zignorowane.
+// Zauważ, że jedynie wrapper string'a ma przeliczalne właściwości:
+console.log(obj); // { "0": "a", "1": "b", "2": "c" }
+
+ +

Wyjątki przerwą wykonywanie kopiowania

+ +
var cel = Object.defineProperty({}, 'foo', {
+  value: 1,
+  writable: false
+}); // cel.foo jest właściwością tylko do odczytu
+
+Object.assign(cel, { bar: 2 }, { foo2: 3, foo: 3, foo3: 3 }, { baz: 4 });
+// TypeError: "foo" is read-only
+// Wyjątek został wyrzucony podczas próby zapisania cel.foo
+
+console.log(cel.bar);  // 2, pierwsze źródło zostało skopiowane pomyślnie
+console.log(cel.foo2); // 3, pierwsza właściwość drugiego źródła zostało skopiowana pomyślnie
+console.log(cel.foo);  // 1, tutaj został wyrzucony wyjątek
+console.log(cel.foo3); // undefined, kopiowanie dobiegło końca, foo3 nie zostanie skopiowane
+console.log(cel.baz);  // undefined, trzecie źródło również nie zostanie skopiowane
+
+ +

Kopiowanie operatorów pamięci

+ +
var obj = {
+  foo: 1,
+  get bar() {
+    return 2;
+  }
+};
+
+var kopia = Object.assign({}, obj);
+console.log(kopia);
+// { foo: 1, bar: 2 }, wartość kopia.bar jest wartością zwracaną przez metodę getter właściwości obj.bar
+
+// Funkcja przypisania kopiująca całe deskryptory:
+function completeAssign(cel, ...zrodla) {
+  zrodla.forEach(zrodlo => {
+    let deskryptory = Object.keys(zrodlo).reduce((deskryptory, klucz) => {
+      deskryptory[klucz] = Object.getOwnPropertyDescriptor(zrodlo, klucz);
+      return deskryptory;
+    }, {});
+    // domyślnie Object.assign kopiuje również przeliczalne symbole
+    Object.getOwnPropertySymbols(zrodlo).forEach(sym => {
+      let deskryptor = Object.getOwnPropertyDescriptor(zrodlo, sym);
+      if (deskryptor.enumerable) {
+        deskryptory[sym] = deskryptor;
+      }
+    });
+    Object.defineProperties(cel, deskryptory);
+  });
+  return target;
+}
+
+var kopia = completeAssign({}, obj);
+console.log(kopia);
+// { foo:1, get bar() { return 2 } }
+
+ +

Polyfill

+ +

Ten {{Glossary("Polyfill","polyfill")}} nie wspiera właściwości-symboli, ponieważ ES5 i tak ich nie ma.

+ +
if (typeof Object.assign != 'function') {
+  Object.assign = function(target, varArgs) { // .length of function is 2
+    'use strict';
+    if (target == null) { // TypeError if undefined or null
+      throw new TypeError('Cannot convert undefined or null to object');
+    }
+
+    var to = Object(target);
+
+    for (var index = 1; index < arguments.length; index++) {
+      var nextSource = arguments[index];
+
+      if (nextSource != null) { // Skip over if undefined or null
+        for (var nextKey in nextSource) {
+          // Avoid bugs when hasOwnProperty is shadowed
+          if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {
+            to[nextKey] = nextSource[nextKey];
+          }
+        }
+      }
+    }
+    return to;
+  };
+}
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES2015', '#sec-object.assign', 'Object.assign')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ESDraft', '#sec-object.assign', 'Object.assign')}}{{Spec2('ESDraft')}}
+ +

Kompatybilność z przeglądarką

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerEdgeOperaSafari
Basic support{{CompatChrome("45")}}{{CompatGeckoDesktop("34")}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatOpera("32")}}{{CompatSafari("9")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatChrome("45")}}{{CompatGeckoMobile("34")}}{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}}
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/constructor/index.html b/files/pl/web/javascript/reference/global_objects/object/constructor/index.html new file mode 100644 index 0000000000..3de20f1350 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/constructor/index.html @@ -0,0 +1,49 @@ +--- +title: Object.prototype.constructor +slug: Web/JavaScript/Referencje/Obiekty/Object/constructor +tags: + - JavaScript + - Object + - Property +translation_of: Web/JavaScript/Reference/Global_Objects/Object/constructor +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Określa funkcję tworzącą prototyp obiektu. Należy pamiętać, że wartość tej własności jest referencją do funkcji, a nie łańcuchem znaków zawierającym jej nazwę.

+ +

Opis

+ +

Wszystkie obiekty dziedziczą własność constructor z ich prototypu (prototype):

+ +
var o = {};
+o.constructor === Object; // true
+
+var a = [];
+a.constructor === Array; // true
+
+var n = new Number(3);
+n.constructor === Number; // true
+
+ +

Przykłady

+ +

Przykład: Wyświetlanie konstruktora obiektu

+ +

Poniższy przykład tworzy prototyp, Drzewo i obiekt tego typu sosna. Następnie wyświetlana jest własność constructor obiektu Drzewo.

+ +
function Drzewo(nazwa) {
+   this.nazwa=nazwa;
+}
+
+sosna = new Drzewo("sosna");
+console.log("sosna.constructor to " + sosna.constructor)
+
+ +

Przykład ten wyświetla:

+ +
sosna.constructor to function Drzewo(nazwa) {
+   this.nazwa = nazwa;
+}
+
diff --git a/files/pl/web/javascript/reference/global_objects/object/freeze/index.html b/files/pl/web/javascript/reference/global_objects/object/freeze/index.html new file mode 100644 index 0000000000..73e0139f31 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/freeze/index.html @@ -0,0 +1,201 @@ +--- +title: Object.freeze() +slug: Web/JavaScript/Referencje/Obiekty/Object/freeze +translation_of: Web/JavaScript/Reference/Global_Objects/Object/freeze +--- +
{{JSRef}}
+ +
Metoda Object.freeze() "zamraża" obiekt, tzn. uniemożliwia dodawania nowych właściwości do obiektu; uniemożliwia usuwanie istniejących właściwości; uniemożliwia zmianę istniejących właściwości; oraz uniemożliwia zmianę prototypu obiektu. W efekcie obiekt jest naprawdę stały. Metoda zwraca obiekt w stanie "zamrożonym".
+ +
 
+ +

Składnia

+ +
Object.freeze(obj)
+ +

Argumenty

+ +
+
obj
+
Obiekt który ma zostać "zamrożony".
+
+ +

Zwracana wartość

+ +

"Zamrożony" obiekt.

+ +

Opis

+ +

Nic nie może zostać dodane ani usunięte z "zamrożonego" obiektu. Każda próba tego wywoła błąd, albo po cichu, albo rzucając wyjątek {{jsxref("TypeError")}}(zawzwyczaj, choć nie zawsze, w przypadku używania {{jsxref("Strict_mode", "strict mode", "", 1)}}).

+ +

Nie ma możliwości zmiany wartości właściwości obiektu. Metody dostępu (gettery i settery) działają bez zmian (sprawiają wrażenie skutecznej zmiany właściwości obiektu). Zwróć uwagę na to, że wartości, które są obiektami w dalszym ciągu mogą być modyfikowane, chyba że również są "zamrożone". Z uwagi na to, że Tablica (Array) jest obiektem, również może zostać zamrożona co uniemożliwi zmianę jej elementów, ich usuwanie oraz dodawanie nowych. 

+ +

Przykłady

+ +

 

+ +

Zamrażanie Obiektów

+ +

 

+ +
var obj = {
+  prop: function() {},
+  foo: 'bar'
+};
+
+// Nowe właściwości mogą być dodawane, istniejące mogą być zmieniane oraz usuwane
+obj.foo = 'baz';
+obj.lumpy = 'woof';
+delete obj.prop;
+
+// Zarówno obiekt przekazywany w funkcji freeze() jak i obiekt zwracany bedą "zamrożone"
+// Nie ma potrzeby przypisywania zwracanego obiektu do zmiennej jeśli chcemy tylko "zamrozić" obiekt przekazywany w funkcji
+var o = Object.freeze(obj);
+
+o === obj; // true
+Object.isFrozen(obj); // === true
+
+// Teraz wszelkie zmiany są niemożliwe
+obj.foo = 'quux'; // brak rezultatu nieskutkujący wyświetleniem błędu
+obj.quaxxor = 'the friendly duck'; // brak rezultatu nieskutkujący wyświetleniem błędu
+
+// przy strict mode tego typu próby spowodują wyświetlenie komunikatu o błędzie
+function fail(){
+  'use strict';
+  obj.foo = 'sparky'; // TypeError
+  delete obj.quaxxor; // TypeError
+  obj.sparky = 'arf'; // TypeError
+}
+
+fail();
+
+// Próby zmian poprzez Object.defineProperty spowodują wyświetlenie komunikatu o błędzie
+Object.defineProperty(obj, 'ohai', { value: 17 }); // TypeError
+Object.defineProperty(obj, 'foo', { value: 'eit' }); // TypeError
+
+// Niemożliwa jest również zmiana prototypu obiektu. Obie instrukcje poniżej wygenerują błąd
+Object.setPrototypeOf(obj, { x: 20})
+obj.__proto__ = { x: 20}
+
+ +

Zamrażanie Tablic (Array)

+ +

 

+ +
let a = [0];
+Object.freeze(a); // Tablica nie może być teraz modyfikowana
+
+a[0]=1; // brak rezultatu nieskutkujący wyświetleniem błędu
+a.push(2); // brak rezultatu nieskutkujący wyświetleniem błędu
+
+// przy strict mode tego typu próby spowodują wyświetlenie komunikatu o błędzie TypeErrors
+function fail() {
+  "use strict"
+  a[0] = 1;
+  a.push(2);
+}
+
+fail();
+ +

"Zamrożony" obiekt jest niemutowalny. Nie jest on jednak stałą. Obrazuje to poniższy przykład.

+ +
obj1 = {
+  internal: {}
+};
+
+Object.freeze(obj1);
+obj1.internal.a = 'aValue';
+
+obj1.internal.a // 'aValue'
+
+ +

 

+ +

To be a constant object, the entire reference graph (direct and indirect references to other objects) must reference only immutable frozen objects.  The object being frozen is said to be immutable because the entire object state (values and references to other objects) within the whole object is fixed.  Note that strings, numbers, and booleans are always immutable and that Functions and Arrays are objects. 

+ +

To make an object constant, recursively freeze each property which is of type object (deep freeze).  Use the pattern on a case-by-case basis based on your design when you know the object contains no cycles in the reference graph, otherwise an endless loop will be triggered.   An enhancement to deepFreeze() would be to have an internal function that receives a path (e.g. an Array) argument so you can supress calling deepFreeze() recursively when an object is in the process of being made constant.  You still run a risk of freezing an object that shouldn't be frozen, such as [window].

+ +
// To do so, we use this function.
+function deepFreeze(obj) {
+
+  // Retrieve the property names defined on obj
+  var propNames = Object.getOwnPropertyNames(obj);
+
+  // Freeze properties before freezing self
+  propNames.forEach(function(name) {
+    var prop = obj[name];
+
+    // Freeze prop if it is an object
+    if (typeof prop == 'object' && prop !== null)
+      deepFreeze(prop);
+  });
+
+  // Freeze self (no-op if already frozen)
+  return Object.freeze(obj);
+}
+
+obj2 = {
+  internal: {}
+};
+
+deepFreeze(obj2);
+obj2.internal.a = 'anotherValue';
+obj2.internal.a; // unde
+ +

 

+ +

 

+ +

Notes

+ +

In ES5, if the argument to this method is not an object (a primitive), then it will cause a {{jsxref("TypeError")}}. In ES2015, a non-object argument will be treated as if it were a frozen ordinary object, and be simply returned.

+ +
> Object.freeze(1)
+TypeError: 1 is not an object // ES5 code
+
+> Object.freeze(1)
+1                             // ES2015 code
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES5.1', '#sec-15.2.3.9', 'Object.freeze')}}{{Spec2('ES5.1')}}Initial definition. Implemented in JavaScript 1.8.5.
{{SpecName('ES2015', '#sec-object.freeze', 'Object.freeze')}}{{Spec2('ES2015')}} 
{{SpecName('ESDraft', '#sec-object.freeze', 'Object.freeze')}}{{Spec2('ESDraft')}} 
+ +

Browser compatibility

+ +
+

{{Compat("javascript.builtins.Object.freeze")}}

+
+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/getownpropertydescriptor/index.html b/files/pl/web/javascript/reference/global_objects/object/getownpropertydescriptor/index.html new file mode 100644 index 0000000000..3f9498b26e --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/getownpropertydescriptor/index.html @@ -0,0 +1,121 @@ +--- +title: Object.getOwnPropertyDescriptor() +slug: Web/JavaScript/Referencje/Obiekty/Object/getOwnPropertyDescriptor +translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDescriptor +--- +
{{JSRef}}
+ +

Metoda Object.getOwnPropertyDescriptor() zwraca deskryptor definiujący stan właściwości (właściwość musi być zdefiniowana bezpośrednio na obiekcie, ponieważ metoda nie sprawdza właściwości w łańcuchu prototypów obiektu) dla podanego obiektu.

+ +

Składnia

+ +
Object.getOwnPropertyDescriptor(obj, prop)
+ +

Argumenty

+ +
+
obj
+
Obiekt, w którym będzie poszukiwana właściwość.
+
prop
+
Nazwa właściwości, dla której będzie pobrany deskryptor.
+
+ +

Wartość zwracana

+ +

Jeżeli obiekt posiada podaną właściwość, wówczas zostanie zwrócony jej deskryptor, w przeciwnym razie zostanie zwrócony {{jsxref("undefined")}}.

+ +

Opis

+ +

Metoda ta pozwala na dokładne zbadanie stanu właściwości. W rzeczywistości właściwość obiektu w JavaScript to nie tylko jej nazwa oraz wartość ale również odpowiadający jej deskryptor. Więcej informacji o atrybutach deskryptora można znaleźć w {{jsxref("Object.defineProperty()")}}.

+ +

Deskryptor właściwości jest obiektem zawierającym poniższe atrybuty:

+ +
+
value
+
Wartość związana z odpowiadającą właściwością (tylko dla deskryptorów danych).
+
writable
+
Jeżeli true odpowiadająca wartość właściwości może być zmieniona (tylko dla deskryptorów danych).
+
get
+
Funkcja, która zwraca getter dla odpowiadającej właściwości lub {{jsxref("undefined")}} jeżeli getter nie występuje (tylko dla deskryptorów dostępowych).
+
set
+
Funkcja, która zwraca setter dla odpowiadającej właściwości lub {{jsxref("undefined")}} jeżeli setter nie występuje (tylko dla deskryptorów dostępowych).
+
configurable
+
Jeżeli true odpowiadająca wartość właściwości może być zmieniona (również ich rodzaj - z właściwości danych na właściwość funkcji dostępowych, i odwrotnie) oraz usunięta z odopowiadającego obiektu.
+
enumerable
+
Jeżeli true odpowiadająca wartość właściwości będzie dostępna podczas iteracji po właściwosciach odpowiadającego obiektu.
+
+ +

Przykłady

+ +
var o, d;
+
+o = { get foo() { return 17; } };
+d = Object.getOwnPropertyDescriptor(o, 'foo');
+// d is { configurable: true, enumerable: true, get: /*the getter function*/, set: undefined }
+
+o = { bar: 42 };
+d = Object.getOwnPropertyDescriptor(o, 'bar');
+// d is { configurable: true, enumerable: true, value: 42, writable: true }
+
+o = {};
+Object.defineProperty(o, 'baz', { value: 8675309, writable: false, enumerable: false });
+d = Object.getOwnPropertyDescriptor(o, 'baz');
+// d is { value: 8675309, writable: false, enumerable: false, configurable: false }
+
+ +

Uwagi

+ +

W ES5, jeżeli pierwszy argument dla podanej metody nie jest obiektem (jest typem prostym), wówczas zostanie wyrzucony wyjątek {{jsxref("TypeError")}}. Natomiast w ES2015, na typie prymitywnym najpierw zostanie wykonana koercja do obiektu.

+ +
Object.getOwnPropertyDescriptor('foo', 0);
+// TypeError: "foo" is not an object  // ES5 code
+
+Object.getOwnPropertyDescriptor('foo', 0);
+// {configurable:false, enumerable:true, value:"f", writable:false}  // ES2015 code
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES5.1', '#sec-15.2.3.3', 'Object.getOwnPropertyDescriptor')}}{{Spec2('ES5.1')}}Initial definition. Implemented in JavaScript 1.8.5.
{{SpecName('ES6', '#sec-object.getownpropertydescriptor', 'Object.getOwnPropertyDescriptor')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-object.getownpropertydescriptor', 'Object.getOwnPropertyDescriptor')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność przeglądarkowa

+ +
+
+ + +

{{Compat("javascript.builtins.Object.getOwnPropertyDescriptor")}}

+
+
+ +

 

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/hasownproperty/index.html b/files/pl/web/javascript/reference/global_objects/object/hasownproperty/index.html new file mode 100644 index 0000000000..42bb16783b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/hasownproperty/index.html @@ -0,0 +1,150 @@ +--- +title: Object.prototype.hasOwnProperty() +slug: Web/JavaScript/Referencje/Obiekty/Object/hasOwnProperty +translation_of: Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty +--- +
{{JSRef("Global_Objects", "Object")}}
+ +

Wstęp

+ +

Metoda hasOwnProperty() zwraca wartość true jeśli obiekt, na którym została wywołana posiada konkretną własność.

+ +

Składnia

+ +
obj.hasOwnProperty(prop)
+ +

Parametry

+ +
+
prop
+
Nazwa ({{jsxref("String")}}) własności lub Symbol, do sprawdzenia.
+
+ +

Wartość zwracana

+ +

A {{jsxref ("Boolean")}} wskazujący, czy obiekt zawiera w sobie określoną właściwość.

+ +

Opis

+ +

Każdy obiekt pochodzący od {{jsxref("Global_Objects/Object", "Object")}} dziedziczy metodę hasOwnProperty. Może być ona użyta do stwierdzenia czy obiekt posiada określoną własność, jako bezpośrednią (direct) własność. W przeciwieństwie do  operatora {{jsxref("Operators/in", "in")}}, metoda hasOwnProperty nie sprawdza w głąb łańcucha własności obiektu.

+ +

Notatka

+ +

hasOwnProperty zwraca true, nawet jeśli wartość właściwości to null lub undefined.

+ +
o = new Object();
+o.propOne = null;
+o.hasOwnProperty('propOne');   // zwraca true
+o.propTwo = undefined;
+o.hasOwnProperty('propTwo');   // zwraca true
+
+ +

Przykłady

+ +

Użycie hasOwnProperty do testowania istnienia własności

+ +

Poniższy przykład określa czy obiekt o posiada własność o nazwie prop:

+ +
o = new Object();
+o.hasOwnProperty('prop');   // zwraca false
+o.prop = 'istnieje';
+o.hasOwnProperty('prop');   // zwraca true
+ +

Własności bezpośrednie kontra odziedziczone

+ +

Poniższy przykład rozróżnia bezpośrednie właściwości z właściwościami dziedziczonymi w łańcuchu prototypów:

+ +
o = new Object();
+o.prop = 'istnieje';
+o.hasOwnProperty('prop');             // zwraca true
+o.hasOwnProperty('toString');         // zwraca false
+o.hasOwnProperty('hasOwnProperty');   // zwraca false
+
+ +

Iterowanie przez właściwości obiektu

+ +

Poniższy przykład ilustruje sposób iteracji po właściwościach obiektu bez wykonywania iteracji na dziedziczonych właściwościach.

+ +
const obj = {
+  prop: 'Wartość',
+  secondProp: 'Wartość 2'
+}
+
+for (const name in obj) {
+  if (obj.hasOwnProperty(name)) {
+    console.log('Znaleziono własność ' + name + ' o wartości ' + obj[name])
+  } else {
+    console.log('Brak własności: ', name)
+  }
+}
+ +
+

Zwróć uwagę, że pętla {{jsxref("Statements/for...in", "for...in")}} tylko iteruje właściwości przeliczalne, a nieprzeliczanych nie zauważa.

+
+ +

Używanie hasOwnProperty jako nazwy właściwości

+ +

JavaScript nie chroni nazwy właściwości hasOwnProperty; tak więc, jeśli istnieje możliwość, że obiekt może mieć właściwość o tej nazwie, konieczne jest użycie zewnętrznej właściwości hasOwnProperty, aby uzyskać poprawne wyniki:

+ +
const obj = {
+  hasOwnProperty: function() {
+    return false;
+  },
+  prop: 'Kolejna właściwość'
+};
+
+obj.hasOwnProperty('prop'); // zawsze zwróci false
+
+// Użyj właściwości hasOwnProperty innego obiektu i wywołaj ją, ustawiając "this" na obj
+({}).hasOwnProperty.call(obj, 'prop'); // zwraca true
+
+// W tym celu można również użyć własności hasOwnProperty z prototypu Object
+Object.prototype.hasOwnProperty.call(obj, 'prop'); // zwraca true
+
+ +

Zwróć uwagę, że w ostatnim przypadku nie ma żadnych nowo utworzonych obiektów.

+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
ECMAScript 3rd Edition.StandardInitial definition. Implemented in JavaScript 1.5.
{{SpecName('ES5.1', '#sec-15.2.4.5', 'Object.prototype.hasOwnProperty')}}{{Spec2('ES5.1')}}
{{SpecName('ES6', '#sec-object.prototype.hasownproperty', 'Object.prototype.hasOwnProperty')}}{{Spec2('ES6')}}
+ +

Wsparcie przeglądarek

+ + + +
{{Compat("javascript.builtins.Object.hasOwnProperty")}}
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/index.html b/files/pl/web/javascript/reference/global_objects/object/index.html new file mode 100644 index 0000000000..88ed5060cb --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/index.html @@ -0,0 +1,212 @@ +--- +title: Object +slug: Web/JavaScript/Referencje/Obiekty/Object +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/Object +--- +
{{JSRef}}
+ +

Konstruktor Object tworzy wrapper obiektu.

+ +

Składnia

+ +
// Notacja literałowa
+{ [ paraWartoscNazwa1[, paraWartoscNazwa2[, ...paraWartoscNazwaN] ] ] }
+
+// Wywoływany jako konstruktor
+new Object([wartosc])
+ +

Parametry

+ +
+
paraWartoscNazwa1, paraWartoscNazwa2, ... paraWartoscNazwaN
+
Pary nazw (string) oraz wartości (jakakolwiek wartość) przyczym nazwa oddzielona jest od wartości dwukropkiem.
+
wartosc
+
Jakakolwiek wartość.
+
+ +

Opis

+ +

Kostruktor obiektu tworzy wrapper dla danej wartości. Jeżeli podana wartość to {{jsxref("null")}} albo {{jsxref("undefined")}}, konstruktor stworzy i zwróci pusty obiekt. W przeciwnym razie stworzy i zwróci obiekt o takim samym typie jak podana wartość. Jeżeli podana wartość jest obiektem to konstruktor zwróci ten właśnie obiekt.

+ +

Zobacz również Inicjator obiektu / notacja literałowa.

+ +

Właściwości

+ +
+
Object.length
+
Przyjmuje wartość 1.
+
{{jsxref("Object.prototype")}}
+
Pozwala na dodawanie właściwości i metod do wszystkich obiektów typu Object.
+
+ +

Metody

+ +
+
{{jsxref("Object.assign()")}}
+
Kopiuje wszystkie własne właściwości z jednego lub więcej obiektów żródłowych do obiektu docelowego.
+
{{jsxref("Object.create()")}}
+
Tworzy nowy obiekt z podanym prototypem oraz właściwościami
+
{{jsxref("Object.defineProperty()")}}
+
Dodaje do obiektu wymienioną właściwość opisywaną przez podany deskryptor.
+
{{jsxref("Object.defineProperties()")}}
+
Dodaje do obiektu wymienione właściwości opisywane przez podane deskryptory.
+
{{jsxref("Object.freeze()")}}
+
Zamraża obiekt. Uniemożliwia usuwanie oraz modyfikowanie jego właściwości.
+
{{jsxref("Object.getOwnPropertyDescriptor()")}}
+
Zwraca z obiektu deskryptor dla wymienionej właściwości. 
+
{{jsxref("Object.getOwnPropertyNames()")}}
+
Zwraca tablicę zawierającą nazwy wszystkich własnych właściwości obiektu. (Zarówno przeliczalnych jak i nieprzeliczalnych)
+
{{jsxref("Object.getOwnPropertySymbols()")}}
+
Zwraca tablicę zawierającą wszystkie własne właściwości-symbole danego obiektu
+
{{jsxref("Object.getPrototypeOf()")}}
+
Zwraca prototyp określonego obiektu.
+
{{jsxref("Object.is()")}}
+
Sprawdza czy dwie podane wartości są takie same.
+
{{jsxref("Object.isExtensible()")}}
+
Sprawdza czy obiekt można rozszerzyć.
+
{{jsxref("Object.isFrozen()")}}
+
Sprawdza czy obiekt jest zamrożony.
+
{{jsxref("Object.isSealed()")}}
+
Sprawdza czy obiekt jest zapieczętowany.
+
{{jsxref("Object.keys()")}}
+
Zwraca tablicę zawierającą nazwy wszystkich własnych właściwości obiektu. (Tylko przeliczalnych)
+
{{jsxref("Object.preventExtensions()")}}
+
Zabopiega rozszerzaniu obiektu (tj. dodawaniu właściwości).
+
{{jsxref("Object.seal()")}}
+
Zapieczętowuje obiekt, zapobiegając dodawaniu oraz usuwaniu jego właściwości.
+
{{jsxref("Object.setPrototypeOf()")}}
+
Ustawia prototyp obiektu.
+
{{jsxref("Object.values()")}} {{experimental_inline}}
+
Zwraca tablicę zawierającą wszystkie własne, przeliczalne wartości obiektu.
+
+ +

Instancje i prototyp Object

+ +

W Javascript, wsyzstkie obiekty pochodzą od obiektu Object, tymsamym dziedziczą metody i właściwości z {{jsxref("Object.prototype")}}, jednak mogą być one nadpisane. Na przykład, prototypy innych konstruktorów nadpisują właściwość constructor oraz metody toString(). Wszelkie zmiany w prototypie Object są przekazywane do wszystkich obiektów, chyba że właściwości lub metody do których zmiany się odnośiły zostały gdzieś po drodze nadpisane.

+ +

Właściwości

+ +
{{page('/pl/docs/Web/JavaScript/Referencje/Obiekty/Object/prototype', 'W.C5.82asno.C5.9Bci') }}
+ +

Metody

+ +
{{page('/pl/docs/Web/JavaScript/Referencje/Obiekty/Object/prototype', 'Metody') }}
+ +

Przykłady

+ +

Używanie typów null i undefined

+ +

W poniższych przykładach zmienna o przechowuje pusty obiekt Object:

+ +
var o = new Object();
+
+ +
var o = new Object(undefined);
+
+ +
var o = new Object(null);
+
+ +

Tworzenie obiektu Boolean

+ +

W poniższych przykładach zmienna o przechowuje obiekty {{jsxref("Boolean")}}:

+ +
// równoznaczne z: o = new Boolean(true);
+var o = new Object(true);
+
+ +
// równoznaczne z: o = new Boolean(false);
+var o = new Object(Boolean());
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES1')}}{{Spec2('ES1')}}Początkowa definicja. Zaimplementowana w JavaScript 1.0.
{{SpecName('ES5.1', '#sec-15.2', 'Object')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-object-objects', 'Object')}}{{Spec2('ES6')}}Dodano Object.assign, Object.getOwnPropertySymbols, Object.setPrototypeOf, Object.is
{{SpecName('ESDraft', '#sec-object-objects', 'Object')}}{{Spec2('ESDraft')}}Dodano Object.entries, Object.values oraz Object.getOwnPropertyDescriptors.
+ +

Kompatybilność z przeglądarką

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/proto/index.html b/files/pl/web/javascript/reference/global_objects/object/proto/index.html new file mode 100644 index 0000000000..6d4dd4653e --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/proto/index.html @@ -0,0 +1,193 @@ +--- +title: Object.prototype.__proto__ +slug: Web/JavaScript/Referencje/Obiekty/Object/proto +translation_of: Web/JavaScript/Reference/Global_Objects/Object/proto +--- +
+

Ostrzeżenie: Zmiana [[Prototype]] obiektu, ze względu na sposób w jaki współczesny JavaScript optymalizuje dostęp do właściwości, jest bardzo powolną operacją (W każdej przeglądarce!). Efekty modyfikacji łańcucha dziedziczenia są rozległe, nie chodzi tu tylko o wydłużenie czasu potrzebnego na wykonanie operacji obj.__proto__ = ..., skutki wpływają na każdy fragment kodu który odwołuje się do jakiejkolwiek właściwości obiektu, którego [[Prototype]] został zmieniony. Dlatego jeżeli zależy ci na wydajności powinieneś unikać tej operacji. Zamiast tego, stwórz nowy obiekt z porządanym [[Prototype]] za pomocą {{jsxref("Object.create()")}}.

+
+ +
+

Ostrzeżenie: Mimo że w dzisiejszych czasach Object.prototype.__proto__ jest wspierany w niemal każdej przeglądarce, jego istnienie oraz zachowanie zostały ujednolicone w specyfikacji ECMAScript 2015 jedynie jako legacy feature aby zapewnić kompatybilność z przeglądarkami. Dla lepszego wsparcia rekomenduje się używanie {{jsxref("Object.getPrototypeOf()")}}.

+
+ +
{{JSRef}}
+ +

Właściwość __proto__ obiektu {{jsxref("Object.prototype")}} jest operatorem dostępu (metoda getter i setter) która operuje na wewnętrznym [[Prototype]] (na obiekcie lub na {{jsxref("Global_Objects/null", "null")}}) obiektu do którego się odnosi.

+ +

Użycie __proto__ jest kontrowersyjne i podchodzi się do niego z niechęcią. Oryginalnie nigdy nie pojawiło się w specyfikacji EcmaScript, ale nowoczesne przeglądarki postanowiły mimo wszystko to zaimplementować. Dopiero niedawno właściwość __proto__ znalazła swoje miejsce w specyfikacji ECMAScript 2015 aby zapewnić kompatybilność z tymi przeglądarkami. Jest ona jednak przestarzała ze względu na {{jsxref("Object.getPrototypeOf")}}/{{jsxref("Reflect.getPrototypeOf")}} oraz {{jsxref("Object.setPrototypeOf")}}/{{jsxref("Reflect.setPrototypeOf")}} (choć modyfikowanie [[Prototype]] wciąż jest operacją powolną, która powinna być unikana przez wzgląd na wydajność).

+ +

Właściwość __proto__ może być również używana w notacji literałowej aby ustawić [[Prototype]] tworzonego obiektu, jako alterantywa do {{jsxref("Object.create()")}}. Zobacz: inicjalizator obiektu / notacja literałowa.

+ +

Składnia

+ +
var Kolo = function () {};
+var ksztalt = {};
+var kolo = new Kolo();
+
+// Ustawianie prototypu obiektu
+// ZDEPRECJONOWANE. Używamy tego tylko dla przykładu. NIE RÓB TEGO w prawdziwym kodzie.
+ksztalt.__proto__ = kolo;
+
+// Sprawdzenie prototypu obiektu
+console.log(ksztalt.__proto__ === kolo); // true
+
+ +
var ksztalt = function () {};
+var p =
+{
+    a: function ()
+    {
+        console.log('aaa');
+    }
+};
+ksztalt.prototype.__proto__ = p;
+
+var kolo = new ksztalt();
+kolo.a(); // aaa
+
+console.log(ksztalt.prototype === kolo.__proto__); // true
+
+// albo
+
+var ksztalt = function () {};
+var p =
+{
+    a: function ()
+    {
+        console.log('aaa');
+    }
+};
+
+var kolo = new ksztalt();
+kolo.__proto__ = p;
+circle.a(); // aaa
+
+console.log(ksztalt.prototype === kolo.__proto__); // false
+
+// albo
+
+function ksztalt() {};
+ksztalt.prototype.a = function ()
+{
+    console.log('aaa');
+}
+var kolo = new ksztalt();
+kolo.a(); // aaa
+
+console.log(kolo.__proto__ === ksztalt.prototype); // true
+
+// albo
+
+var ksztalt = function () {};
+ksztalt.prototype.a = function ()
+{
+    console.log('aaa');
+}
+
+var kolo =
+{
+    __proto__: ksztalt.prototype
+};
+kolo.a(); // aaa
+
+console.log(kolo.__proto__ === ksztalt.prototype); // true
+
+ +

Uwaga: __proto__ zapisujemy jako dwie podłogi, następnie pięć liter "proto", następnie dwie kolejne podłogi.

+ +

Opis

+ +

Metoda getter właściwości __proto__ daje nam dostęp do wewnętrznej wartości [[Prototype]] obiektu. Dla obiektów stworzonych przy użyciu literału jest to {{jsxref("Object.prototype")}}. Dla tablic stworzonych przy użyciu literału jest to {{jsxref("Array.prototype")}}. Dla funkcji ta wartość to {{jsxref("Function.prototype")}}. Dla obiektów stworzonych przy użyciu new Funkcja, gdzie Funkcja to jeden z wbudowanych konstruktorów dostarczanych przez JavaScript ({{jsxref("Array")}}, {{jsxref("Boolean")}}, {{jsxref("Date")}}, {{jsxref("Number")}}, {{jsxref("Object")}}, {{jsxref("String")}}, i tak dalej — wliczając nowe konstrukotry, które mogą zostać dodane w przyszłości), ta wartość to zawsze Funkcja.prototype. Dla obiektów stworzonych przy użyciu new Funkcja, gdzie Funkcja to funkcja zdefiniowana w kodzie, wartość ta przyjmuje taką samą wartość jak Funkcja.prototype.

+ +

Metoda setter właściwości __proto__ umożliwia modyfikowanie [[Prototype]] obiektu. W tym celu obiekt musi być roszerzalny według funkcji {{jsxref("Object.isExtensible()")}}, jeżeli nie jest {{jsxref("Global_Objects/TypeError", "TypeError")}} zostanie wyrzucony. Dostarczana wartość musi być obiektem albo typem {{jsxref("Global_Objects/null", "null")}}. Podanie jakiejkolwiek innej wartości nie zrobi nic.

+ +

Aby zrozumieć w jaki sposób prototypy używane są do dziedziczenia, zobacz artykuł o dziedziczeniu oraz łańcuchu prototypów.

+ +

Właściwość __proto__ jest prostym operatorem pamięci na {{jsxref("Object.prototype")}} składającym się z metody getter i setter. Dostęp do właściwości __proto__ który ostatecznie konsultuje się z {{jsxref("Object.prototype")}} znajdzie tę właściwość, ale dostęp który nie konsultuje {{jsxref("Object.prototype")}} nie znajdzie jej. Jeżeli jakaś inna właściwość __proto__ zostanie znaleziona, zanim {{jsxref("Object.prototype")}} zostanie skonsultowany, to właściwość ta przesłoni tą znalezioną w {{jsxref("Object.prototype")}}.

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES2015', '#sec-additional-properties-of-the-object.prototype-object', 'Object.prototype.__proto__')}}{{Spec2('ES2015')}}Dołączony (normatywnie) jako jeden z dodatkowych ECMAScript legacy features dla przeglądarek (zauważ że specyfikacja jedynie ujednoliciła coś, co było już zaimplementowane w przeglądarkach).
{{SpecName('ESDraft', '#sec-additional-properties-of-the-object.prototype-object', 'Object.prototype.__proto__')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność z przeglądarką

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatIE("11")}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Uwagi odnośnie kompatybilności

+ +

Mimo, że specyfikacja ECMAScript 2015 określa iż wsparcie dla __proto__ jest wymagane tylko dla przeglądarek internetowych (w zasadzie normatywnie), to inne środowiska równieź mogą wspierać tę funkcjonalność.

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/seal/index.html b/files/pl/web/javascript/reference/global_objects/object/seal/index.html new file mode 100644 index 0000000000..ba52ba9665 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/seal/index.html @@ -0,0 +1,165 @@ +--- +title: Object.seal() +slug: Web/JavaScript/Referencje/Obiekty/Object/seal +translation_of: Web/JavaScript/Reference/Global_Objects/Object/seal +--- +
{{JSRef}}
+ +

Metoda Object.seal() "uszczelnia" obiekt, zabezpieczając przed dodaniem nowych właściwości oraz czyniąc wszystkie już istniejące jako niekonfigurowalne. Wartość znajdujące się już w obiekcie mogą być cały czas zmieniane tak długo dopóki posiadają atrybut writable.

+ +

Składnia

+ +
Object.seal(obj)
+ +

Parametry

+ +
+
obj
+
Obiekt który powinien zostać zamknięty.
+
+ +

Zwracana wartość

+ +

Uszczelniony obiekt.

+ +

Opis

+ +

Standardowo obiekty są {{jsxref("Object.isExtensible()", "extensible", "", 1)}} (nowe właściwości mogą być do nich dodawane). Zamknięcie obiektu zabezpiecza przed możliwością ich dodawania oraz oznacza wszystkie już obecne jako niekonfigurowalne. To skutkuje tym, że zestaw właściwości obiektu staje się niemutowalny. Sprawienie, że wszystkie właściwości są również niekonfigurowalne  zabezpiecza je przed byciem przekonwertowane na akcesory/mutatory i odwrotnie, jednak nie zapobiega to zmianie wartości. Próba usunięcia lub dodania nowych właściwości do uszczelnionego obiektu lub konwersja jakiejś właściwości do akcesorów/mutatorów zawiedzie bez wyjątku lub wywołując {{jsxref("TypeError")}} (tak jest najczęściej, choć nie całkowicie, kiedy skrypt jest w {{jsxref("Strict_mode", "strict mode", "", 1)}}).

+ +

Łancuch prototypów pozostaje nie zmieniony, jednakże właściwość {{jsxref("Object.proto", "__proto__")}} {{deprecated_inline}} jest również niemożliwa do zmiany.

+ +

Examples

+ +
var obj = {
+  prop: function() {},
+  foo: 'bar'
+};
+
+// Nowe właściwości mogą być dodane,
+// istniejące - zmienione lub usunięte.
+obj.foo = 'baz';
+obj.lumpy = 'woof';
+delete obj.prop;
+
+var o = Object.seal(obj);
+
+o === obj; // true
+Object.isSealed(obj); // === true
+
+// Zmiana wartości na zamkniętym obiekcie nadal działa.
+obj.foo = 'quux';
+
+// Jednak nie możesz zmienić właściwości obieku do akcesorów i odwrotnie
+Object.defineProperty(obj, 'foo', { get: function() { return 'g'; } }); // throws a TypeError
+
+// W tym momencie jakiekolwiek inne zmiany właściwości obiektu zawiodą
+obj.quaxxor = 'the friendly duck'; // nie doda właściwości, nie rzucając wyjątku
+delete obj.foo; // nie usunie właściwości, nie rzucając wyjątku
+
+// ...w trybie strict takie operacje będą rzucać wyjątkami.
+function fail() {
+  'use strict';
+  delete obj.foo; // rzuca TypeError
+  obj.sparky = 'arf'; // rzuca TypeError
+}
+fail();
+
+// Próba dodania właściwości przez Object.defineProperty zawiedzie
+Object.defineProperty(obj, 'ohai', { value: 17 }); // rzuca TypeError
+Object.defineProperty(obj, 'foo', { value: 'eit' }); // zmienia istniejącą wartość
+
+ +

Uwagi

+ +

W ES5, jeżeli argumentem metody nie jest obiekt (jest to prymitywna struktura), spowoduje to wywołanie {{jsxref("TypeError")}}. W ES6, argument nie będący obiektem zostanie potraktowany jakby już był uszczelnionym, zwykłym obiektem i będzie zwrócony.

+ +
Object.seal(1);
+// TypeError: 1 is not an object (ES5 code)
+
+Object.seal(1);
+// 1                             (ES6 code)
+
+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES5.1', '#sec-15.2.3.8', 'Object.seal')}}{{Spec2('ES5.1')}}Wstępna definicja. Implementowano w  JavaScript 1.8.5.
{{SpecName('ES6', '#sec-object.seal', 'Object.seal')}}{{Spec2('ES6')}} 
+ +

Kompatybilność w przeglądarkach

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatChrome("6")}}{{CompatGeckoDesktop("2.0")}}{{CompatIE("9")}}{{CompatOpera("12")}}{{CompatSafari("5.1")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/tolocalestring/index.html b/files/pl/web/javascript/reference/global_objects/object/tolocalestring/index.html new file mode 100644 index 0000000000..1cd0074d45 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/tolocalestring/index.html @@ -0,0 +1,35 @@ +--- +title: Object.prototype.toLocaleString() +slug: Web/JavaScript/Referencje/Obiekty/Object/toLocaleString +tags: + - JavaScript + - Method + - Object + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Object/toLocaleString +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący obiekt. Ta metoda najczęściej jest przysłonięta przez pochodne obiekty.

+ +

Składnia

+ +
obj.toLocaleString();
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Object toLocaleString zwraca rezultat, który nazywamy {{jsxref("Object.toString", "toString()")}}.

+ +

Ta metoda jest dostarczona dając obiektom generującą metodę toLocaleString(), nawet mimo to nie wszystkie go używają. Aktualnie, tylko Array, Number i Date nadpisują toLocaleString.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/tosource/index.html b/files/pl/web/javascript/reference/global_objects/object/tosource/index.html new file mode 100644 index 0000000000..4aa67db90c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/tosource/index.html @@ -0,0 +1,73 @@ +--- +title: Object.prototype.toSource() +slug: Web/JavaScript/Referencje/Obiekty/Object/toSource +tags: + - JavaScript + - Method + - Non-standard + - Object + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Object/toSource +--- +
{{JSRef}} {{non-standard_header}}
+ +

Podsumowanie

+ +

Zwraca literał obiektowy reprezentujący kod źródłowy danego obiektu.

+ +

Składnia

+ +
Object.toSource();
+obj.toSource();
+
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Metoda toSource() zwraca następujące wartości:

+ + + +

Metoda ta zazwyczaj jest używana wewnętrznie przez interpreter JavaScriptu, a nie bezpośrednio w kodzie. Można jednak wywołać toSource() podczas debugowania, by zbadać zawartość danego obiektu.

+ +

Przykłady

+ +

Przykład: Zastosowanie toSource()

+ +

Poniższy kod definiuje typ obiektowy Pies i tworzy instancję piesek jako obiekt typu Pies:

+ +
function Pies(nazwa) {
+  this.nazwa = nazwa;
+}
+
+Pies.prototype.toSource = function Pies_toSource() {
+  return 'new Pies(' + uneval(this.nazwa) + ')';
+};
+
+console.log(new Pies('Joe').toSource()); // ---> new  Pies("Joe")
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/tostring/index.html b/files/pl/web/javascript/reference/global_objects/object/tostring/index.html new file mode 100644 index 0000000000..e18d93d79a --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/tostring/index.html @@ -0,0 +1,98 @@ +--- +title: Object.prototype.toString() +slug: Web/JavaScript/Referencje/Obiekty/Object/toString +tags: + - JavaScript + - Method + - Object + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Object/toString +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący dany obiekt.

+ +

Składnia

+ +
obj.toString()
+ +

Opis

+ +

Każdy obiekt posiada metodę toString, która jest wywoływana automatycznie, kiedy obiekt ma zostać przedstawiony jako wartość tekstowa, albo kiedy obiekt jest dołączany do ciągu znakowego. Poniższe przykłady wymagają, by jakisPies był reprezentowany jako łańcuch znaków:

+ +
console.log(jakisPies);
+console.log("jakisPies to " + jakisPies);
+
+ +

Domyślnie metoda toString jest dziedziczona przez każdy obiekt wyprowadzony z obiektu Object. Można przesłonić tę metodę dla własnych obiektów. Jeśli toString nie zostanie przesłonięta we własnych obiektach użytkownika, zwróci ona [object + typ + ], gdzie + typ + jest typem obiektu lub nazwą funkcji konstruktora, która utworzyła ten obiekt.

+ +

Na przykład:

+ +
var o = new Object()
+o.toString() // zwraca "[object Object]"
+
+ +

Przykłady

+ +

Przesłanianie domyślnej metody toString()

+ +

Można utworzyć funkcję, która będzie wywoływana zamiast domyślnej metody toString(). Metoda toString() nie pobiera żadnych argumentów i powinna zwrócić łańcuch znaków. Utworzona przez użytkownika metoda toString() może zwracać dowolną wartość, ale najlepiej, by przekazywała użyteczne informacje na temat obiektu.

+ +

Poniższy kod definiuje typ obiektowy Pies i tworzy obiekt jakisPies typu Pies:

+ +
function Pies(nazwa,rasa,wiek,plec) {
+   this.nazwa=nazwa;
+   this.rasa=rasa;
+   this.wiek=wiek;
+   this.plec=plec;
+}
+
+jakisPies = new Pies("Szarik","owczarek niemiecki","5","samiec");
+ +

Jeśli wywołana zostanie metoda toString tego obiektu, zwrócona zostanie domyślna wartość odziedziczona po Object:

+ +
jakisPies.toString(); // zwraca [object Object]
+
+ +

Poniższy kod tworzy funkcję piesToString, która to funkcja będzie przesłaniać domyślną metodę toString. Funkcja ta tworzy łańcuch znaków zawierający każdą własność; budowany łańcuch będzie postaci "własność = wartość;".

+ +
function piesToString() {
+   var ret = "Pies " + this.nazwa + " to: [\n";
+   for (var prop in this)
+      ret += " " + prop + " = " + this[prop] + ";\n";
+   return ret + "]";
+}
+
+ +

Poniższy kod przypisuje zdefiniowaną powyżej funkcję do metody toString obiektów typu obiektowego Pies:

+ +
Pies.prototype.toString = piesToString;
+
+ +

Dzięki powyższemu kodowi za każdym razem, kiedy jakisPies używany jest w kontekście łańcucha znaków, interpreter JavaScriptu automatycznie wywołuje funkcję piesToString, która zwraca poniższy łańcuch:

+ +
Pies Szarik to: [
+  nazwa = Szarik;
+  rasa = owczarek niemiecki;
+  wiek = 5;
+  plec = samiec;
+]
+
+ +

Metoda toString danego obiektu jest zazwyczaj wywoływana przez interpreter JavaScriptu, ale można ją wywołać samodzielnie, jak poniżej:

+ +
var piesString = jakisPies.toString();
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/object/valueof/index.html b/files/pl/web/javascript/reference/global_objects/object/valueof/index.html new file mode 100644 index 0000000000..db3cf7a346 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/object/valueof/index.html @@ -0,0 +1,63 @@ +--- +title: Object.prototype.valueOf() +slug: Web/JavaScript/Referencje/Obiekty/Object/valueOf +tags: + - JavaScript + - Method + - Object + - Prototype +translation_of: Web/JavaScript/Reference/Global_Objects/Object/valueOf +--- +

{{jsRef}}

+ +

Podsumowanie

+ +

Zwraca wartość podstawową danego obiektu.

+ +

Składnia

+ +
object.valueOf()
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

JavaScript wywołuje metodę valueOf() by przekonwertować obiekt do wartości podstawowej. Metodę valueOf rzadko wykorzystuje się w pisanych programach, zazwyczaj JavaScript wywołuje ją automatycznie, kiedy oczekując wartości podstawowej napotka obiekt.

+ +

Domyślnie metoda valueOf() jest dziedziczona przez każdy obiekt potomny obiektu {{jsxref("Object")}}. Każdy wbudowany obiekt jądra JavaScriptu przesłania tę metodą by zwracała właściwą wartość. Jeśli obiekt nie ma wartości podstawowej, valueOf() zwraca sam obiekt, który jest wyświetlany jako:

+ +
[object Object]
+
+ +

We własnych programach można oczywiście używać metody valueOf do konwersji obiektów na wartości podstawowe. Kiedy użytkownik tworzy własne obiekty, może przesłonić metodę valueOf() własną wersją.

+ +

Przesłanianie metody valueOf dla własnych obiektów

+ +

Można utworzyć funkcję, która będzie wywoływana zamiast domyślnej metody valueOf. Taka funkcja nie powinna mieć argumentów.

+ +

Załóżmy, że mamy typ obiektowy MojTypLiczbowy i chcemy utworzyć dla niego metodę valueOf. Poniższy kod przypisuje zdefiniowaną przez użytkownika funkcję do metody valueOf obiektu:

+ +
MojTypLiczbowy.prototype.valueOf = new Function(tekstFunkcji);
+
+ +

Dzięki powyższej instrukcji za każdym razem, kiedy obiekt typu MojTypLiczbowy jest używany w kontekście wartości prostej, JavaScript automatycznie wywoła funkcję zdefiniowaną powyżej.

+ +

Metoda valueOf obiektu jest zwykle wywoływana przez interpreter JavaScriptu, ale można ją wywołać samodzielnie:

+ +
mojaLiczba.valueOf();
+
+ +

Uwaga

+ +

Obiekty używane w kontekście łańcucha znaków konwertowane są przy użyciu metody toString, co różni się od konwertowania obiektów String do prostych łańcuchów znaków poprzez valueOf. Wszystkie obiekty posiadają konwersję do łańcucha znaków, choćby [object + typ + ]. Ale wiele obiektów nie posiada domyślnej konwersji do liczby, wartości logicznej lub funkcji.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/parsefloat/index.html b/files/pl/web/javascript/reference/global_objects/parsefloat/index.html new file mode 100644 index 0000000000..9afb58d074 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/parsefloat/index.html @@ -0,0 +1,68 @@ +--- +title: parseFloat() +slug: Web/JavaScript/Referencje/Obiekty/parseFloat +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/parseFloat +--- +
+
+
{{jsSidebar("Objects")}}
+
+
+ +

Podsumowanie

+ +

Przetwarza argument w postaci łańcucha znaków zwracając liczbę zmiennoprzecinkową.

+ +

Składnia

+ +
parseFloat(string)
+ +

Parametry

+ +
+
string 
+
Łańcuch znaków do przetworzenia.
+
+ +

Opis

+ +

parseFloat() jest funkcją najwyższego poziomu, niepowiązaną z żadnym obiektem.

+ +

parseFloat() przetwarza argument będący łańcuchem znaków i zwraca liczbę zmiennoprzecinkową. Jeśli natknie się na znak inny niż +, -, liczbę (0-9), kropkę dziesiętną (".") lub wykładnik potęgi, zwraca wartość do tego miejsca i ignoruje dany znak oraz wszystkie dalsze znaki. Dozwolone są spacje na początku i na końcu łańcucha znaków.

+ +

Jeśli pierwszy znak nie może być przekonwertowany do liczby, parseFloat() zwraca NaN.

+ +

W zastosowaniach arytmetycznych, wartość NaN nie jest liczbą w żadnej podstawie wyliczeń (ang. + + radix + ). Aby stwierdzić, czy wynik parseFloat będzie NaN, można wywołać funkcję {{jsxref("isNan", "isNaN()")}}. Jeśli wartość NaN użyta zostanie w operacji arytmetycznej, wynikiem operacji także będzie NaN.

+ +

Uwaga: Funkcja parseFloat wymaga, aby punktem dziesiętnym była kropka, a nie przecinek. Zastosowanie przecinka spowoduje pominięcie części ułamkowej.

+ +

Przykłady

+ +

Przykład: parseFloat() zwraca liczbę

+ +

Wszystkie poniższe przykłady zwracają 3.14.

+ +
parseFloat("3.14");
+parseFloat("314e-2");
+parseFloat("0.0314E+2");
+parseFloat("3.14 więcej znaków nienumerycznych");
+ +

Przykład: parseFloat() zwraca NaN

+ +

Poniższy przykład zwraca NaN:

+ +
parseFloat("FF2");
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/parseint/index.html b/files/pl/web/javascript/reference/global_objects/parseint/index.html new file mode 100644 index 0000000000..fb05b9fc8e --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/parseint/index.html @@ -0,0 +1,112 @@ +--- +title: parseInt() +slug: Web/JavaScript/Referencje/Obiekty/parseInt +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/parseInt +--- +
+
+
{{jsSidebar("Objects")}}
+
+
+ +

Podsumowanie

+ +

Przetwarza argument w postaci łańcucha znaków i zwraca liczbę całkowitą typu + integer + , o zadanej podstawie.

+ +

Składnia

+ +
parseInt(string, radix);
+ +

Parametry

+ +
+
string 
+
Łańcuch znaków zawierający wartość do przetworzenia.
+
+ +
+
radix 
+
Liczba typu + integer + określająca podstawę powyższego łańcucha (np. 2 - system dwójkowy, 10 - system dziesiętny, przyp. tłum.)
+
+ +

Opis

+ +

parseInt jest funkcją najwyższego poziomu i nie jest związana z żadnym obiektem.

+ +

Funkcja parseInt parsuje jej pierwszy argument, łańcuch znaków, i próbuje zwrócić liczbę całkowitą typu + + integer + o podanej podstawie. Na przykład, podstawa 10 oznacza że liczba w łańcuchu jest liczbą dziesiętną, podstawa 8 - ósemkową, 16 - szesnastkową (heksadecymalną), itd. Dla podstaw większych niż 10, litery alfabetu oznaczają cyfry większe niż 9. Dla przykładu, dla liczb szesnastkowych (o podstawie 16), używane są litery od A do F.

+ +

Jeśli parseInt natknie się na znak nie będący cyfrą o danej podstawie, ignoruje ona ten znak i wszystkie następne znaki, a następnie zwraca wartość przetworzoną do tej pory. parseInt przycina liczby do wartości całkowitych. Początkowe i grupujące spacje są dozwolone.

+ +

Jeśli podstawa nie jest podana lub jest podana jako 0, JavaScript przyjmuje:

+ + + +

Jeśli pierwszy znak nie może być skonwertowany na liczbę, parseInt zwraca NaN.

+ +

Dla potrzeb arytmetycznych, wartość NaN nie jest liczbą o żadnej podstawie. Możesz wywołać funkcję {{jsxref("isNaN", "isNaN()")}}, by stwierdzić czy wynik parseInt będzie NaN. Jeśli NaN jest podane do jakichkolwiek operacji arytmetycznych, wynikiem tych operacji również będzie NaN.

+ +

Przykłady

+ +

Przykład: Zastosowanie parseInt()

+ +

Wszystkie poniższe przykłady zwracają 15:

+ +
parseInt(" 0xF, 16);
+parseInt(" F", 16);
+parseInt("17", 8);
+parseInt(021, 8);
+parseInt(15.99, 10);
+parseInt("FXX123", 16);
+parseInt("1111", 2);
+parseInt("15*3", 10);
+parseInt("15e2", 10);
+parseInt("15px", 10);
+parseInt("12", 13);
+ +

Wszystkie poniższe przykłady zwracają NaN:

+ +
parseInt("Hello", 8); // nie jest wcale liczbą
+parseInt("546", 2); // te cyfry nie są używane do zapisu liczb binarnych
+ +

Wszystkie poniższe przykłady zwracają -15:

+ +
parseInt("-F", 16);
+parseInt("-0F", 16);
+parseInt("-0XF", 16);
+parseInt("-15.1, 10);
+parseInt(" -17", 8);
+parseInt(" -15", 10);
+parseInt("-1111", 2);
+parseInt("-15e1", 10);
+parseInt("-12", 13);
+
+ +

Wszystkie poniższe przykłady zwracają 224:

+ +
parseInt("0e0", 16);
+ +

 

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/promise/index.html b/files/pl/web/javascript/reference/global_objects/promise/index.html new file mode 100644 index 0000000000..3da2498ca1 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/promise/index.html @@ -0,0 +1,256 @@ +--- +title: Promise +slug: Web/JavaScript/Referencje/Obiekty/Promise +tags: + - JavaScript + - Obietnice +translation_of: Web/JavaScript/Reference/Global_Objects/Promise +--- +
{{JSRef}}
+ +

Obiekt Promise reprezentuje ewentualne zakończenie (lub porażkę) asynchronicznej operacji i jej wartości.

+ +
+

Artykuł opisuje konstruktor, metody i właściwości obiektu Promise. By nauczyć się jak działają obietnice i jak można ich używać zalecamy przeczytać najpierw Użycie obietnic . Ten konstruktor jest głównie używany do opakowania funkcji, które nie wspierają jeszcze obietnic.

+
+ +
{{EmbedInteractiveExample("pages/js/promise-constructor.html")}}
+ + + + + +

Składnia

+ +
new Promise( /* wykonawca */ function(resolve, reject) { ... } );
+ +

Parametry

+ +
+
wykonawca (executor)
+
Funkcja przekazywana z argumentami resolve i reject. Funkcja ta wykonywana jest natychmiast przez implementację obietnicy, przekazując funkcje resolve i reject (ta funkcja jest wywoływana, zanim konstruktor Promise zwróci utworzony obiekt). Funkcje resolve i reject , gdy są wywoływane, odpowiednio rozwiązują lub odrzucają obietnicę. Ta funkcja zwykle inicjuje pracę asynchroniczną, a następnie, po jej zakończeniu, wywołuje funkcję resolve w celu rozwiązania obietnicy lub odrzuca ją, jeśli wystąpił błąd. Jeśli błąd zostanie zgłoszony w tej funkcji, obietnica zostaje odrzucona. Wartość zwracana tej funkcji jest ignorowana.
+
+ +

Opis

+ +

Promise jest proxy dla wartości niekoniecznie znanej, gdy jest tworzona. Pozwala na kojarzenie uchwytu z ewentualnym sukcesem lub porażką asynchroniczne akcji. Pozwala to metodom asynchronicznym zwracać wartości takie jak metody synchroniczne, zamiast natychmiastowego zwracania wartości końcowej, metoda asynchroniczna zwraca obietnicę dostarczenia wartości w pewnym momencie w przyszłości.

+ +

Promise jest dostępny w jednym z tych stanów:

+ + + +

Obowiązująca objetnica może być zakończona z wartością lub odrzucona z powodem(błędem). Kiedy dzieje się jedna z tych opcji, wywoływane są zakolejkowane, powiązane za pomocą metody then procedury. (Jeśli obietnica została już spełniona lub odrzucona, gdy dołączony jest odpowiedni moduł obsługi, zostanie on wywołany, więc nie ma potrzeby wyścigu między zakończeniem operacji asynchronicznej a jej obsługą).

+ +

Tak jak w {{jsxref("Promise.then", "Promise.prototype.then()")}} oraz {{jsxref("Promise.catch", "Promise.prototype.catch()")}} gdy metoda zwróci obietnice, mogą one być łączone w łańcuchy.

+ +

+ +
+

Nie mylić z: Kilka innych języków ma mechanizmy leniwego oceniania i odraczania obliczeń, które nazywają również "obietnicami", np. Scheme. Obietnice w JavaScript oznaczają procesy, które już się odbywają, które mogą być powiązane z funkcjami wywołania zwrotnego. Jeśli chcesz leniwie oceniać wyrażenie, rozważ  funkcje strzałkowe bez argumentów: f = () => wyrażenie by stworzyć leniwo oszacowane wyrażenie, i f() by ocenić.

+
+ +
+

Mówi się, że obietnica zostanie uregulowana, jeśli zostanie spełniona lub odrzucona, ale nie oczekuje na rozpatrzenie. Usłyszysz także termin rozwiązany używany z obietnicami - oznacza to, że obietnica jest ustalona lub "zamknięta", aby dopasować się do stanu innej obietnicy. Stany i losy zawierają więcej szczegółów na temat obiecanej terminologii.

+
+ +

Właściwości

+ +
+
Promise.length
+
Właściwość Length, której wartość wynosi zawsze 1 (liczba argumentów konstruktora).
+
{{jsxref("Promise.prototype")}}
+
Reprezentuje prototyp konstruktora Promise.
+
+ +

Metody

+ +
+
{{jsxref("Promise.all", "Promise.all(iterable)")}}
+
Zwraca obietnice, która albo kończy się sukcesem gdy wszystkie z obietnic w iterable się zakończą powodzeniem lub kończy sie porażką tak szybko jak jedna z obietnic skończy się porażką. Jeżeli zwrócona obietnica kończy się sukcesem jest ona wypełniana tablicą wartości z obietnic zakończonych sukcesem w takim samym układzie jak były one zdefiniowane w iterable. Jeżeli zwrócona obietnica zakończyła się porażką, jest ona odrzucana z Powodem z pierwszej obietnicy w iterable, która zakończyła się porażką. Ta metoda może być pomocna do zachowywania rezultatów różnych obietnic.
+
{{jsxref("Promise.race", "Promise.race(iterable)")}}
+
Returns a promise that fulfills or rejects as soon as one of the promises in the iterable fulfills or rejects, with the value or reason from that promise.
+
+ +
+
{{jsxref("Promise.reject", "Promise.reject(reason)")}}
+
Returns a Promise object that is rejected with the given reason.
+
+ +
+
{{jsxref("Promise.resolve", "Promise.resolve(value)")}}
+
Returns a Promise object that is resolved with the given value. If the value is a thenable (i.e. has a then method), the returned promise will "follow" that thenable, adopting its eventual state; otherwise the returned promise will be fulfilled with the value. Generally, if you don't know if a value is a promise or not, {{jsxref("Promise.resolve", "Promise.resolve(value)")}} it instead and work with the return value as a promise.
+
+ +

Promise prototype

+ +

Właściwości

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/Promise/prototype','Properties')}}

+ +

Metody

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/Promise/prototype','Methods')}}

+ +

Tworzenie Promise

+ +

A Promise object is created using the new keyword and its constructor. This constructor takes as its argument a function, called the "executor function". This function should take two functions as parameters. The first of these functions (resolve) is called when the asynchronous task completes successfully and returns the results of the task as a value. The second (reject) is called when the task fails, and returns the reason for failure, which is typically an error object.

+ +
const myFirstPromise = new Promise((resolve, reject) => {
+  // do something asynchronous which eventually calls either:
+  //
+  //   resolve(someValue); // fulfilled
+  // or
+  //   reject("failure reason"); // rejected
+});
+
+ +

To provide a function with promise functionality, simply have it return a promise:

+ +
function myAsyncFunction(url) {
+  return new Promise((resolve, reject) => {
+    const xhr = new XMLHttpRequest();
+    xhr.open("GET", url);
+    xhr.onload = () => resolve(xhr.responseText);
+    xhr.onerror = () => reject(xhr.statusText);
+    xhr.send();
+  });
+}
+ +

Przykłady

+ +

Podstawowy przykład

+ +
let myFirstPromise = new Promise((resolve, reject) => {
+  // We call resolve(...) when what we were doing asynchronously was successful, and reject(...) when it failed.
+  // In this example, we use setTimeout(...) to simulate async code.
+  // In reality, you will probably be using something like XHR or an HTML5 API.
+  setTimeout(function(){
+    resolve("Success!"); // Yay! Everything went well!
+  }, 250);
+});
+
+myFirstPromise.then((successMessage) => {
+  // successMessage is whatever we passed in the resolve(...) function above.
+  // It doesn't have to be a string, but if it is only a succeed message, it probably will be.
+  console.log("Yay! " + successMessage);
+});
+
+ +

Zaawansowany Przykład

+ + + +

This small example shows the mechanism of a Promise. The testPromise() method is called each time the {{HTMLElement("button")}} is clicked. It creates a promise that will be fulfilled, using {{domxref("window.setTimeout()")}}, to the promise count (number starting from 1) every 1-3 seconds, at random. The Promise() constructor is used to create the promise.

+ +

The fulfillment of the promise is simply logged, via a fulfill callback set using {{jsxref("Promise.prototype.then()","p1.then()")}}. A few logs show how the synchronous part of the method is decoupled from the asynchronous completion of the promise.

+ +
'use strict';
+var promiseCount = 0;
+
+function testPromise() {
+    let thisPromiseCount = ++promiseCount;
+
+    let log = document.getElementById('log');
+    log.insertAdjacentHTML('beforeend', thisPromiseCount +
+        ') Started (<small>Sync code started</small>)<br/>');
+
+    // We make a new promise: we promise a numeric count of this promise, starting from 1 (after waiting 3s)
+    let p1 = new Promise(
+        // The resolver function is called with the ability to resolve or
+        // reject the promise
+       (resolve, reject) => {
+            log.insertAdjacentHTML('beforeend', thisPromiseCount +
+                ') Promise started (<small>Async code started</small>)<br/>');
+            // This is only an example to create asynchronism
+            window.setTimeout(
+                function() {
+                    // We fulfill the promise !
+                    resolve(thisPromiseCount);
+                }, Math.random() * 2000 + 1000);
+        }
+    );
+
+    // We define what to do when the promise is resolved with the then() call,
+    // and what to do when the promise is rejected with the catch() call
+    p1.then(
+        // Log the fulfillment value
+        function(val) {
+            log.insertAdjacentHTML('beforeend', val +
+                ') Promise fulfilled (<small>Async code terminated</small>)<br/>');
+        })
+    .catch(
+        // Log the rejection reason
+       (reason) => {
+            console.log('Handle rejected promise ('+reason+') here.');
+        });
+
+    log.insertAdjacentHTML('beforeend', thisPromiseCount +
+        ') Promise made (<small>Sync code terminated</small>)<br/>');
+}
+ + + +

This example is started by clicking the button. You need a browser that supports Promise. By clicking the button several times in a short amount of time, you'll even see the different promises being fulfilled one after another.

+ +

{{EmbedLiveSample("Advanced_Example", "500", "200")}}

+ +

Ładowanie obrazka z XHR

+ +

Another simple example using Promise and XMLHttpRequest to load an image is available at the MDN GitHub js-examples repository. You can also see it in action. Each step is commented and allows you to follow the Promise and XHR architecture closely.

+ +

Specyfikacja

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES2015', '#sec-promise-objects', 'Promise')}}{{Spec2('ES2015')}}Initial definition in an ECMA standard.
{{SpecName('ESDraft', '#sec-promise-objects', 'Promise')}}{{Spec2('ESDraft')}}
+ +

Zgodność z przeglądarkami

+ + + +

{{Compat("javascript.builtins.Promise")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/proxy/index.html b/files/pl/web/javascript/reference/global_objects/proxy/index.html new file mode 100644 index 0000000000..7dc7695f00 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/proxy/index.html @@ -0,0 +1,401 @@ +--- +title: Proxy +slug: Web/JavaScript/Referencje/Obiekty/Proxy +translation_of: Web/JavaScript/Reference/Global_Objects/Proxy +--- +
+
{{JSRef}}
+
+ +

Obiekt Proxy jest używany w celu definiowania specyficznego zachowania dla podstawowych operacji (n.p. wyszukiwanie atrybutu, przypisanie, wyliczanie, wywołanie funkcji, etc).

+ +

Terminologia

+ +
+
handler
+
Zastępczy obiekt zawierający pułapki (traps).
+
traps
+
Metody zapewniające dostęp do atrybutów. Pojęcie to jest analogiczne do pułapek w systemie operacyjnym.
+
target
+
Obiekt wirtualizowany przez proxy. Często jest używany aby magazyować dane obiektu proxy. Niezmienniki (wartości które pozostają niezmienione) dotyczące nierozszerzalności obiektu lub niekonfigurowalnnych atrybutów są weryfikowane w oparciu o target.
+
+ +

Składnia

+ +
var p = new Proxy(target, handler);
+
+ +

Parametry

+ +
+
target
+
Docelowy obiekt (może być obiektem dowolnego typu, włącznie z wbudowanymi tablicami, funkcjami, a nawet innyi obiektami proxy) przeznaczony do opakowania przez Proxy.
+
handler
+
Obiekt obsługujący którego atrybuty są funkcjami definiującymi zachowanie proxy podczas wykonania na nim operacji.
+
+ +

Metody

+ +
+
{{jsxref("Proxy.revocable()")}}
+
Tworzy odwracalny obiekt Proxy.
+
+ +

Metody obiektu obsługującego

+ +

Obiekt obsługujący jest obiektem zastępczym zawierającym pułapki dla obieku Proxy.

+ +
{{page('/pl/docs/Web/JavaScript/Referencje/Obiekty/Proxy/handler', 'Metody') }}
+ +

Przykłady

+ +

Podstawowy przykład

+ +

W tym prostym przykładzie liczba 37 jest zwracana jako domyślna wartość kiedy nazwa atrybutu nie istnieje w obiekcie. W tym celu użyty jest handler get.

+ +
var handler = {
+    get: function(target, name) {
+        return name in target ?
+            target[name] :
+            37;
+    }
+};
+
+var p = new Proxy({}, handler);
+p.a = 1;
+p.b = undefined;
+
+console.log(p.a, p.b); // 1, undefined
+console.log('c' in p, p.c); // false, 37
+
+ +

Puste proxy przekazujące

+ +

W tym przykładzie używamy wbudowanego obiektu JavaScript do którego proxy przekaże wszystkie zaaplikowane na nim operacje.

+ +
var target = {};
+var p = new Proxy(target, {});
+
+p.a = 37; // operacja przekazana do obiektu target
+
+console.log(target.a); // 37. Operacja została prawidłowo przekazana
+
+ +

Zwróć uwagę, że ten przykład działa dla obiektów JavaScript jednak nie sprawdzi się w przypadku obiektów przeglądarki takich jak elementy DOM. Sprawdź jedno rozwiązanie.

+ +

Walidacja

+ +

Używając Proxy, łatwo możesz zwalidować wartości przekazywane do obiektu. Poniższy przykład używa metody obsługującej set.

+ +
let validator = {
+  set: function(obj, prop, value) {
+    if (prop === 'age') {
+      if (!Number.isInteger(value)) {
+        throw new TypeError('The age is not an integer');
+      }
+      if (value > 200) {
+        throw new RangeError('The age seems invalid');
+      }
+    }
+
+    // domyślnym zachowaniem jest zapisanie wartości
+    obj[prop] = value;
+
+    // oznacza pomyślne wykonanie
+    return true;
+  }
+};
+
+let person = new Proxy({}, validator);
+
+person.age = 100;
+console.log(person.age); // 100
+person.age = 'young'; // rzuca wyjątek
+person.age = 300; // rzuca wyjątek
+ +

Rozszerzanie konstruktora

+ +

Funkcja proxy może w łatwy sposób rozszerzyć konstruktor innym konstruktorem. W tym przykładzie użyto funkcje obsługujące construct oraz apply.

+ +
function extend(sup, base) {
+  var descriptor = Object.getOwnPropertyDescriptor(
+    base.prototype, 'constructor'
+  );
+  base.prototype = Object.create(sup.prototype);
+  var handler = {
+    construct: function(target, args) {
+      var obj = Object.create(base.prototype);
+      this.apply(target, obj, args);
+      return obj;
+    },
+    apply: function(target, that, args) {
+      sup.apply(that, args);
+      base.apply(that, args);
+    }
+  };
+  var proxy = new Proxy(base, handler);
+  descriptor.value = proxy;
+  Object.defineProperty(base.prototype, 'constructor', descriptor);
+  return proxy;
+}
+
+var Person = function(name) {
+  this.name = name;
+};
+
+var Boy = extend(Person, function(name, age) {
+  this.age = age;
+});
+
+Boy.prototype.sex = 'M';
+
+var Peter = new Boy('Peter', 13);
+console.log(Peter.sex);  // "M"
+console.log(Peter.name); // "Peter"
+console.log(Peter.age);  // 13
+ +

Manipulacja węzłami DOM

+ +

Czasami konieczne jest przełączenie atrybutu lub nazwy klasy dwóch innych elementów. Poniższy przykład pokazuje wykonanie funkcją obsługującą set.

+ +
let view = new Proxy({
+  selected: null
+},
+{
+  set: function(obj, prop, newval) {
+    let oldval = obj[prop];
+
+    if (prop === 'selected') {
+      if (oldval) {
+        oldval.setAttribute('aria-selected', 'false');
+      }
+      if (newval) {
+        newval.setAttribute('aria-selected', 'true');
+      }
+    }
+
+    // The default behavior to store the value
+    obj[prop] = newval;
+
+    // Indicate success
+    return true;
+  }
+});
+
+let i1 = view.selected = document.getElementById('item-1');
+console.log(i1.getAttribute('aria-selected')); // 'true'
+
+let i2 = view.selected = document.getElementById('item-2');
+console.log(i1.getAttribute('aria-selected')); // 'false'
+console.log(i2.getAttribute('aria-selected')); // 'true'
+ +

Korekcja wartości i dodatkowych atrybutów

+ +

Obiekt proxy products wylicza przekazaną wartość i konwertuje to tablicy w razie potrzeby. Obiekt dodatkowo obsługuje dodatkowy atrybut latestBrowser zarówno jako getter i setter.

+ +
let products = new Proxy({
+  browsers: ['Internet Explorer', 'Netscape']
+},
+{
+  get: function(obj, prop) {
+    // An extra property
+    if (prop === 'latestBrowser') {
+      return obj.browsers[obj.browsers.length - 1];
+    }
+
+    // The default behavior to return the value
+    return obj[prop];
+  },
+  set: function(obj, prop, value) {
+    // An extra property
+    if (prop === 'latestBrowser') {
+      obj.browsers.push(value);
+      return true;
+    }
+
+    // Convert the value if it is not an array
+    if (typeof value === 'string') {
+      value = [value];
+    }
+
+    // The default behavior to store the value
+    obj[prop] = value;
+
+    // Indicate success
+    return true;
+  }
+});
+
+console.log(products.browsers); // ['Internet Explorer', 'Netscape']
+products.browsers = 'Firefox'; // przekazano string (przez pomyłkę)
+console.log(products.browsers); // ['Firefox'] <- nie ma problemu, wartość jest typu array
+
+products.latestBrowser = 'Chrome';
+console.log(products.browsers); // ['Firefox', 'Chrome']
+console.log(products.latestBrowser); // 'Chrome'
+ +

Wyszukiwanie elementu tablicy po jego właściwości

+ +

Poniższe proxy rozszerza tablicę o różne użyteczne funkcjonalności. Jak widać, można elastycznie "definiować" właściwości bez użycia Object.defineProperties. Ten przykład może być użyty aby znaleźć wiersz tabeli po jego komórce. W takim przypadku, celem będzie table.rows.

+ +
let products = new Proxy([
+  { name: 'Firefox', type: 'browser' },
+  { name: 'SeaMonkey', type: 'browser' },
+  { name: 'Thunderbird', type: 'mailer' }
+],
+{
+  get: function(obj, prop) {
+    // domyślnym zachowaniem jest zwrócenie wartości; prop jest zwykle typu integer
+    if (prop in obj) {
+      return obj[prop];
+    }
+
+    // zwróć liczbę produktów; alias dla products.length
+    if (prop === 'number') {
+      return obj.length;
+    }
+
+    let result, types = {};
+
+    for (let product of obj) {
+      if (product.name === prop) {
+        result = product;
+      }
+      if (types[product.type]) {
+        types[product.type].push(product);
+      } else {
+        types[product.type] = [product];
+      }
+    }
+
+    // znajdź product po nazwie
+    if (result) {
+      return result;
+    }
+
+    // znajdź produkty po typie
+    if (prop in types) {
+      return types[prop];
+    }
+
+    // zwróć typy produktów
+    if (prop === 'types') {
+      return Object.keys(types);
+    }
+
+    return undefined;
+  }
+});
+
+console.log(products[0]); // { name: 'Firefox', type: 'browser' }
+console.log(products['Firefox']); // { name: 'Firefox', type: 'browser' }
+console.log(products['Chrome']); // undefined
+console.log(products.browser); // [{ name: 'Firefox', type: 'browser' }, { name: 'SeaMonkey', type: 'browser' }]
+console.log(products.types); // ['browser', 'mailer']
+console.log(products.number); // 3
+
+ +

Pełna lista przykładów pułapek

+ +

W celu stworzenia pełnej listy przykładów pułapek, w celach dydaktycznych, spróbujemy zastosować proxy nanie natywnym obiekcie który się szczególnie nadaje do tego typu operacji: globalny obiekt docCookies stworzony przez "mały framework" opublikowany na stronie document.cookie.

+ +
/*
+  var docCookies = ... pobranie obiektu "docCookies" tutaj:
+  https://developer.mozilla.org/en-US/docs/DOM/document.cookie#A_little_framework.3A_a_complete_cookies_reader.2Fwriter_with_full_unicode_support
+*/
+
+var docCookies = new Proxy(docCookies, {
+  get: function (oTarget, sKey) {
+    return oTarget[sKey] || oTarget.getItem(sKey) || undefined;
+  },
+  set: function (oTarget, sKey, vValue) {
+    if (sKey in oTarget) { return false; }
+    return oTarget.setItem(sKey, vValue);
+  },
+  deleteProperty: function (oTarget, sKey) {
+    if (sKey in oTarget) { return false; }
+    return oTarget.removeItem(sKey);
+  },
+  enumerate: function (oTarget, sKey) {
+    return oTarget.keys();
+  },
+  ownKeys: function (oTarget, sKey) {
+    return oTarget.keys();
+  },
+  has: function (oTarget, sKey) {
+    return sKey in oTarget || oTarget.hasItem(sKey);
+  },
+  defineProperty: function (oTarget, sKey, oDesc) {
+    if (oDesc && 'value' in oDesc) { oTarget.setItem(sKey, oDesc.value); }
+    return oTarget;
+  },
+  getOwnPropertyDescriptor: function (oTarget, sKey) {
+    var vValue = oTarget.getItem(sKey);
+    return vValue ? {
+      value: vValue,
+      writable: true,
+      enumerable: true,
+      configurable: false
+    } : undefined;
+  },
+});
+
+/* Cookies test */
+
+console.log(docCookies.my_cookie1 = 'First value');
+console.log(docCookies.getItem('my_cookie1'));
+
+docCookies.setItem('my_cookie1', 'Changed value');
+console.log(docCookies.my_cookie1);
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES2015', '#sec-proxy-objects', 'Proxy')}}{{Spec2('ES2015')}}Initial definition.
{{SpecName('ES2016', '#sec-proxy-objects', 'Proxy')}}{{Spec2('ES2016')}} 
{{SpecName('ES2017', '#sec-proxy-objects', 'Proxy')}}{{Spec2('ES2017')}} 
{{SpecName('ESDraft', '#sec-proxy-objects', 'Proxy')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność przeglądarek

+ + + +

{{Compat("javascript.builtins.Proxy", 2)}}

+ +

Zobacz również

+ + + +

Licensing note

+ +

Some content (text, examples) in this page has been copied or adapted from the ECMAScript wiki which content is licensed CC 2.0 BY-NC-SA.

diff --git a/files/pl/web/javascript/reference/global_objects/proxy/proxy/apply/index.html b/files/pl/web/javascript/reference/global_objects/proxy/proxy/apply/index.html new file mode 100644 index 0000000000..4931dd2beb --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/proxy/proxy/apply/index.html @@ -0,0 +1,117 @@ +--- +title: handler.apply() +slug: Web/JavaScript/Referencje/Obiekty/Proxy/handler/apply +tags: + - ECMAScript 2015 + - JavaScript + - Metodă + - Proxy +translation_of: Web/JavaScript/Reference/Global_Objects/Proxy/Proxy/apply +--- +
{{JSRef}}
+ +

Metoda handler.apply() jest pułapką na wywołanie funkcji.

+ +
{{EmbedInteractiveExample("pages/js/proxyhandler-apply.html", "taller")}}
+ + + +

Składnia

+ +
var p = new Proxy(target, {
+  apply: function(target, thisArg, argumentsList) {
+  }
+});
+
+ +

Parametry

+ +

Następujące parametry są przekazywane do metody apply. Wartością this jest handler.

+ +
+
target
+
Obiekt, na którym została wywołana metoda.
+
thisArg
+
Obiekt, który jest this w metodzie.
+
argumentsList
+
Lista argumentów, które zostały przekazane do metody.
+
+ +

Zwracana wartość

+ +

Metoda apply może zwrócić dowolną wartość.

+ +

Opis

+ +

Metoda handler.apply jest pułapką na wywołanie funkcji.

+ +

Przechwycenia

+ +

Ta pułapka może przechwycić poniższe operacje:

+ + + +

Niezmienniki

+ +

Jeśli poniższe zmiemienniki są naruszone, poxy rzuci wyjątek TypeError:

+ +

target musi być obiektem, który da się wywołać. To znaczy, że musi być obiektem funkcyjnym.

+ +

Przykłady

+ +

Poniższy kod przechwytuje wywołanie funkcji.

+ +
var p = new Proxy(function() {}, {
+  apply: function(target, thisArg, argumentsList) {
+    console.log('called: ' + argumentsList.join(', '));
+    return argumentsList[0] + argumentsList[1] + argumentsList[2];
+  }
+});
+
+console.log(p(1, 2, 3)); // "called: 1, 2, 3"
+                         // 6
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES2015', '#sec-proxy-object-internal-methods-and-internal-slots-call-thisargument-argumentslist', '[[Call]]')}}{{Spec2('ES2015')}}Początkowa definicja.
{{SpecName('ESDraft', '#sec-proxy-object-internal-methods-and-internal-slots-call-thisargument-argumentslist', '[[Call]]')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność przeglądarek

+ +
+ + +

{{Compat("javascript.builtins.Proxy.handler.apply")}}

+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/proxy/proxy/index.html b/files/pl/web/javascript/reference/global_objects/proxy/proxy/index.html new file mode 100644 index 0000000000..7461add3d6 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/proxy/proxy/index.html @@ -0,0 +1,78 @@ +--- +title: Proxy handler +slug: Web/JavaScript/Referencje/Obiekty/Proxy/handler +translation_of: Web/JavaScript/Reference/Global_Objects/Proxy/Proxy +translation_of_original: Web/JavaScript/Reference/Global_Objects/Proxy/handler +--- +
{{JSRef}}
+ +

Obiekt obsługujący proxy (proxy's handler object) jest obiektem zastępczym który zawiera pułapki dla obiektów {{jsxref("Proxy", "proxy", "", 1)}}.

+ +

Metody

+ +

Wszystkie pułapki są opcjonalne. Jeśli pułapka nie została zdefiniowana, domyślnym zachowaniem jest przekazanie operacji do obiektu docelowego.

+ +
+
{{jsxref("Global_Objects/Proxy/handler/getPrototypeOf", "handler.getPrototypeOf()")}}
+
Pułapka na {{jsxref("Object.getPrototypeOf")}}.
+
{{jsxref("Global_Objects/Proxy/handler/setPrototypeOf", "handler.setPrototypeOf()")}}
+
Pułapka na {{jsxref("Object.setPrototypeOf")}}.
+
{{jsxref("Global_Objects/Proxy/handler/isExtensible", "handler.isExtensible()")}}
+
Pułapka na {{jsxref("Object.isExtensible")}}.
+
{{jsxref("Global_Objects/Proxy/handler/preventExtensions", "handler.preventExtensions()")}}
+
Pułapka na {{jsxref("Object.preventExtensions")}}.
+
{{jsxref("Global_Objects/Proxy/handler/getOwnPropertyDescriptor", "handler.getOwnPropertyDescriptor()")}}
+
Pułapka na {{jsxref("Object.getOwnPropertyDescriptor")}}.
+
{{jsxref("Global_Objects/Proxy/handler/defineProperty", "handler.defineProperty()")}}
+
Pułapka na {{jsxref("Object.defineProperty")}}.
+
{{jsxref("Global_Objects/Proxy/handler/has", "handler.has()")}}
+
Pułapka na operator {{jsxref("Operators/in", "in")}}.
+
{{jsxref("Global_Objects/Proxy/handler/get", "handler.get()")}}
+
Pułapka na pobieranie wartości atrybutu.
+
{{jsxref("Global_Objects/Proxy/handler/set", "handler.set()")}}
+
Pułapka na ustawianie wartości atrybutu.
+
{{jsxref("Global_Objects/Proxy/handler/deleteProperty", "handler.deleteProperty()")}}
+
Pułapka na operator {{jsxref("Operators/delete", "delete")}}.
+
{{jsxref("Global_Objects/Proxy/handler/ownKeys", "handler.ownKeys()")}}
+
Pułapka na {{jsxref("Object.getOwnPropertyNames")}} i {{jsxref("Object.getOwnPropertySymbols")}}.
+
{{jsxref("Global_Objects/Proxy/handler/apply", "handler.apply()")}}
+
Pułapka na wywołanie funkcji.
+
{{jsxref("Global_Objects/Proxy/handler/construct", "handler.construct()")}}
+
Pułapka na operator {{jsxref("Operators/new", "new")}}.
+
+ +

Niektóre niestandardowe pułapki są przestarzałe i zostały usunięte.

+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-proxy-object-internal-methods-and-internal-slots', 'Proxy Object Internal Methods and Internal Slots')}}{{Spec2('ES2015')}}Początkowa definicja.
{{SpecName('ESDraft', '#sec-proxy-object-internal-methods-and-internal-slots', 'Proxy Object Internal Methods and Internal Slots')}}{{Spec2('ESDraft')}}Usunięto funkcję obsługującą enumerate.
+ +

Kompatybilność przeglądarek

+ + + +

{{Compat("javascript.builtins.Proxy.handler")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/rangeerror/index.html b/files/pl/web/javascript/reference/global_objects/rangeerror/index.html new file mode 100644 index 0000000000..13c2981e8d --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/rangeerror/index.html @@ -0,0 +1,162 @@ +--- +title: RangeError +slug: Web/JavaScript/Referencje/Obiekty/RangeError +translation_of: Web/JavaScript/Reference/Global_Objects/RangeError +--- +
{{JSRef}}
+ +

Obiekt RangeError wskazuje na błąd, gdy wartość jest poza zakresem dozwolonych wartości.

+ +

Składnia

+ +
new RangeError([message[, fileName[, lineNumber]]])
+ +

Parametry

+ +
+
message
+
Opcjonalne. Czytelny opis błędu.
+
fileName {{non-standard_inline}}
+
Opcjonalne. Nazwa pliku zawierającego kod, któy wywołał wyjątek.
+
lineNumber {{non-standard_inline}}
+
Opcjonalne. Numer linii kodu, gdzie wywołany został wyjątek.
+
+ +

 

+ +

Opis

+ +

RangeError rzucany jest podczas próby przesłaniu numeru, jako argumentu do funkcji, która nie pozwala na zakresy zawierające ten numer. To może zdarzyć się podczas próby stworzenia listy (array) o niedozwolonej długości za pomocą konstruktora {{jsxref("Array")}}, lub podczas wywołania metod {{jsxref("Number.toExponential()")}}, {{jsxref("Number.toFixed()")}} lub {{jsxref("Number.toPrecision()")}} z przekazaną złą wartością.

+ +

 

+ +

Właściwości

+ +
+
{{jsxref("RangeError.prototype")}}
+
Pozwala na dodanie właściwości do obiektu RangeError.
+
+ +

Metody

+ +

RangeError nie posiada metod jako takich, ale dziedziczy pewne metody z łańcucha prototypów.

+ +

Instancje RangeError

+ +

Właściwości

+ +
{{page('pl/docs/Web/JavaScript/Referencje/Obiekty/RangeError/prototype', 'Właściwości')}}
+ +

Metody

+ +
{{page('pl/docs/Web/JavaScript/Referencje/Obiekty/RangeError/prototype', 'Metody')}}
+ +

Przykłady

+ +

Użycie RangeError

+ +
var check = function(num) {
+  if (num < MIN || num > MAX) {
+    throw new RangeError('Parameter must be between ' + MIN + ' and ' + MAX);
+  }
+};
+
+try {
+  check(500);
+}
+catch (e) {
+  if (e instanceof RangeError) {
+    // Handle range error
+  }
+}
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES3')}}{{Spec2('ES3')}}Initial definition.
{{SpecName('ES5.1', '#sec-15.11.6.2', 'RangeError')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-native-error-types-used-in-this-standard-rangeerror', 'RangeError')}}{{Spec2('ES6')}} 
+ +

Kompatybilność z przeglądarkami

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Bazowe wsparcie{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Bazowe wsparcie{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}
+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/regexp/exec/index.html b/files/pl/web/javascript/reference/global_objects/regexp/exec/index.html new file mode 100644 index 0000000000..618ec13d69 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/regexp/exec/index.html @@ -0,0 +1,144 @@ +--- +title: RegExp.prototype.exec() +slug: Web/JavaScript/Referencje/Obiekty/RegExp/exec +tags: + - JavaScript + - Method + - Prototype + - RegExp +translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/exec +--- +

{{ JSRef }}

+ +

Podsumowanie

+ +

Wykonuje operacje wyszukiwania danego łańcucha znaków. Wynikiem jest macierz.

+ +

Składnia

+ +
regexObj.exec(str)
+ +

 

+ +

Parametry

+ +
+
str 
+
Łańcuch znaków, do którego ma być porównane wyrażenie.
+
+ +

Opis

+ +

Jak wynika z opisu składni metoda exec może być wywołana w sposób bezpośredni (za pomocą regexp.exec(str)) lub pośredni (za pomocą regexp(str)).

+ +

Jeśli wynik będzie pozytywny metoda exec zwróci macierz oraz zaktualizuje własności obiektu. W przeciwnym wypadku zostanie zwrócone null.

+ +

Przejrzyj poniższy przykład:

+ +
//Znajdź pojedyncze "d" poprzedzone przez jedno lub więcej "b", po których następuje pojedyncze "d"
+//Zapamiętaj znalezione "b" oraz następujące "d"
+//Ignoruj wielkość liter
+var re=/d(b+)(d)/ig;
+var myArray = re.exec("cdbBdbsbz");
+
+ +

Poniższa tabela pokazuje rezultaty wygenerowane przez skrypt:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ObiektWłaściwość/IndeksOpisPrzykład
myArray Zawartość myArray.[ \"dbBd\", \"bB\", \"d\"') ]
indexIndeks wyszukania łańcucha znaków rozpoczynający się od 0.1
inputCiąg bazowy.cdbBdbsbz
[0]Ostatnie odnalezione znaki.dbBd
[1], ...[n ]Wyszukane podłańcuch w nawiasach. Liczba możliwych podłańcuch jest nieokreślona.[1] = bB
+ [2] = d
myRelastIndexIndeks, od którego rozpocząć nowe wyszukiwanie.5
ignoreCaseWskazuje czy flaga "i" została użyta.true
globalWskazuje czy flaga "g" została użyta do globalnego przeszukiwania.true
multilineWskazuje czy flaga "m" została użyta do globalnego przeszukiwania.false
sourceTekst wyszukiwanego łańcucha znaków.d(b+)(d)
+ +

Jeżeli twoje wyrażenie regularne korzysta z flagi "g", możesz wielokrotnie używać metody exec() aby porównać je z tym samym ciągiem znaków. W takim wypadku porównywanie rozpoczyna się od elementu zdefiniowanego jako lastIndex. Na przykład:

+ +
var myRe = /ab*/g;
+var str = 'abbcdefabh';
+var myArray;
+while ((myArray = myRe.exec(str)) !== null) {
+  var msg = 'Found ' + myArray[0] + '. ';
+  msg += 'Next match starts at ' + myRe.lastIndex;
+  console.log(msg);
+}
+ +

Skrypt ten wyświetli następujący tekst:

+ +
Found abb. Next match starts at 3
+Found ab. Next match starts at 9
+
+ +

Przykłady

+ +

Przykład: Zastosowanie exec()

+ +

You can also use exec() without creating a {{jsxref("RegExp")}} object:

+ +
var matches = /(hello \S+)/.exec('This is a hello world!');
+console.log(matches[1]);
+ +

This will display an alert containing 'hello world!'.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/regexp/global/index.html b/files/pl/web/javascript/reference/global_objects/regexp/global/index.html new file mode 100644 index 0000000000..e393cbeed0 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/regexp/global/index.html @@ -0,0 +1,35 @@ +--- +title: RexExp.prototype.global +slug: Web/JavaScript/Referencje/Obiekty/RegExp/global +tags: + - JavaScript + - Property + - Prototype + - RegExp +translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/global +--- +
{{JSRef("Global_Objects", "RegExp")}}
+ +

Podsumowanie

+ +

Określa czy z wyrażeniem regularnym została użyta flaga "g".

+ +
{{js_property_attributes(0, 0, 1)}}
+ +

Opis

+ +

global jest własnością pojedynczego obiektu wyrażenia regularnego.

+ +

Wartość global wynosi true, jeśli użyta została flaga "g"; w przeciwnym przypadku będzie to wartość false. Flaga "g" wskazuje, że wyrażenie regularne powinno zostać sprawdzone w stosunku do wszystkich możliwych wyników w łańcuchu znaków.

+ +

Tej własności nie można zmieniać bezpośrednio.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/regexp/ignorecase/index.html b/files/pl/web/javascript/reference/global_objects/regexp/ignorecase/index.html new file mode 100644 index 0000000000..f847bf1221 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/regexp/ignorecase/index.html @@ -0,0 +1,35 @@ +--- +title: RegExp.prototype.ignoreCase +slug: Web/JavaScript/Referencje/Obiekty/RegExp/ignoreCase +tags: + - JavaScript + - Property + - RegExp + - protype +translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/ignoreCase +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Określa czy z wyrażeniem regularnym została użyta flaga "i".

+ +
{{js_property_attributes(0, 0, 1)}}
+ +

Opis

+ +

ignoreCase jest własnością pojedynczego obiektu wyrażenia regularnego.

+ +

Wartość ignoreCase wynosi true, jeśli użyta została flaga "i"; w przeciwnym przypadku będzie to wartość false. Flaga "i" wskazuje, że wielkość znaków ma być ignorowana podczas dokonywania porównań w łańcuchu znaków.

+ +

Tej własności nie można zmieniać bezpośrednio.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/regexp/index.html b/files/pl/web/javascript/reference/global_objects/regexp/index.html new file mode 100644 index 0000000000..7fb605c26f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/regexp/index.html @@ -0,0 +1,383 @@ +--- +title: RegExp +slug: Web/JavaScript/Referencje/Obiekty/RegExp +tags: + - Constructor + - JavaScript + - RegExp + - Regular Expressions +translation_of: Web/JavaScript/Reference/Global_Objects/RegExp +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Obiekt wyrażeń regularnych (ang. regular expression) zawiera wzór regularnego wyrażenia. Posiada ono właściwości i metody, które umożliwiają znalezienie lub zmianę ciągu znaków w innym ciągu znaków.

+ +

W dodatku do właściwości pojedynczego obiektu wyrażenia regularnego, które tworzysz używając funkcji konstruktora RegExp, predefiniowany obiekt RegExp posiada własności statyczne, które są ustawione, kiedy jakiekolwiek wyrażenie regularne jest użyte.

+ +

Tworzony przez

+ +

Odpowiednik tekstowy lub funkcja-konstruktor RegExp.

+ +

Odpowiednik tekstowy jest używany jak poniżej:

+ +
/wzór/flagi
+
+ +

Konstruktor jest używany jak poniżej:

+ +
new RegExp("wzór"[, "flagi"])
+
+ +

Parametry

+ +
+
wzór
+
Tekst wyrażenia regularnego.
+
flagi
+
Jeśli podane, flagi mogą mieć jakąkolwiek kombinację poniższych wartości: g - wyszukiwanie globalne, i - ignoruje wielkość liter, m - wyszukiwanie w wielu liniach.
+
+ +

Zauważ, że parametry w formacie tekstowym nie używają cudzysłowu do oznaczenia ciągów znaków, kiedy parametry funkcji konstruktora używają cudzysłów. Tak, więc poniższe wyrażenia tworzą to samo wyrażenie regularne:

+ +
/ab+c/i;
+new RegExp("ab+c", "i");
+
+ +

Opis

+ +

Podczas użycia funkcji konstruktora, standardowe znaki ucieczki (string escape rule, poprzedzanie znaków specjalnych backslash'’ "\" kiedy użyte w ciągu znaków) są wymagane. Na przykład poniższe dwa przykłady są identyczne:

+ +
re = new RegExp("\\w+");
+re = /\w+/;
+
+ +

Znaki specjalne w wyrażeniach regularnych

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ZnakZnaczenie
\ +

Dla znaków które zwykle są traktowane dosłownie, oznacza że następny znak jest specjalny i nie ma być interpretowany standardowo.

+ +

Na przykład, /b/ szuka znaku "b". Wstawiając backslash (\) przed b, to jest używając /\b/, znak staje się specjalny "znajdź granicę wyrazu".

+ +

-lub-

+ +

Dla znaków, które zwykle są traktowane jako specjalne oznacza, że następny znak jest zwykły powinien być interpretowany dosłownie.

+ +

Na przykład, * jest znakiem specjalnym oznaczającym 0 lub więcej wystąpień poprzedzającego znaku powinno być znalezionych; na przykład, /a*/ oznacza "znajdź 0 lub więcej znaków a". Aby znaleźć dosłownie *, poprzedź ten znak backslashem (\), na przykład /a\*/ znajduje "a*".

+
^ +

Znajduje początek wejścia. Jeśli flaga wielu linii (ang. multiline) jest ustawiona na prawda (true), znajduje również od razu po znaku nowej linii.

+ +

Na przykład, /^B/ nie znajdzie "B" w "Andrzej B" ale znajdzie "B" w "Bogusław A".

+
$ +

Oznacza koniec wejścia. Jeśli flaga wielu linii (ang. multiline) jest ustawiona na prawda (true), znajduje również bezpośrednio przed znakiem końca linii.

+ +

Na przykład, /a$/ nie znajdzie "a" w "mrówkojad" ale znajdzie "a" w "mrówka".

+
* +

Znajduje poprzedzającą pozycję 0 lub więcej razy.

+ +

Na przykład, /bu*/ znajdzie "buuuu" w "Duch krzyknął buuuu" i "b" w "Głośnik zabrzmiał basowo" ale nic w "Ptak zaśpiewał".

+
+ +

Znajduje poprzedzającą pozycję 1 lub więcej razy. Równoważne do {1,}.

+ +

Na przykład, /r+/ dopasuje się do "r" w "cukierek" i do wszystkich "r" w "cukierrrrrrrek".

+
? +

Znajduje poprzedzającą pozycję 0 razy lub 1 raz.

+ +

Na przykład /o?ąt?/ znajdzie "oł" w "anioł" i "ąt" w "kąt".

+ +

Jeśli zostanie użyte zaraz po którymś ze znaków *, +, ?, lub {}, to wymusza przejście do trybu niezachłannego (domyślne jest dopasowanie zachłanne), czyli dopasowanie następuje do najmniejszego ciągu spełniającego wyrażenie, a nie do największego.

+ +

Pytajnik używany jest także w lookahead assertions, opisanych pod (?=), (?!) i (?:) w tej tabeli.

+
. +

(Kropka) znajduje jakikolwiek pojedynczy znak poza znakiem nowej linii.

+ +

Na przykład, /.a/ znajdzie "ja" i "na" w "jabłko rośnie na drzewie ale arbuz nie", ale nie znajdzie "al" i "ar".

+
(x) +

Znajduje "x" i zapamiętuje to dopasowanie. Nazywa się to "nawiasy wychwytujące" (ang. capturing parentheses).

+ +

Na przykład, /(foo)/ znajduje i zapamiętuje "foo" w "foo bar". Znaleziony pod-ciąg (substring) może być ponownie wywołany elementów tablicy wynikowej 1, ..., n jak również z predefiniowanych własności obiektu RegExp, $1, ..., $9.

+
(?:x) +

Znajduje "x", ale nie pamięta dopasowania. Nazywa się to "nawiasy niewychwytujące" (ang. non-capturing parentheses). Znaleziony podciąg (substring) nie może być wywołany ponownie z elementów wynikowych tablicy 1, ..., n ani za pomocą właściwości obiektu RegExp, $1, ..., $9.

+
x(?=y) +

Znajduje "x", tylko wtedy, gdy zaraz po "x" jest "y". Na przykład, /Jacek(?=Szprotka)/ znajdzie "Jacek" tylko, jeśli zaraz po tym jest wyraz "Szprotka". /Jacek(?=Szprotka|Mróz)/ znajdzie "Jacek" tylko, jeśli po tym jest zaraz wyraz "Szprotka" lub "Mróz"). Jednakże, ani "Szprotka" ani "Mróz" nie jest częścią wyników.

+
x(?!y) +

Znajduje "x", tylko, jeśli po "x" nie ma "y". Na przykład, /\d+(?!\,)/ zostanie dopasowane do liczby całkowitej, tylko jeśli nie ma po niej przecinka.

+ +

/\d+(?!\,)/.exec("3,141") zostanie dopasowane tylko do 141, nie zostanie dopasowane do 3, bo wystąpił po niej przecinek.

+
x|y +

Znajduje "x" lub "y".

+ +

Na przykład, /zielone|czerwone/ znajdzie "zielone" w "zielone jabłko" i "czerwone" w "czerwone jabłko".

+
{n} +

Gdzie n jest dodatnią liczbą całkowitą. Znajduje dokładnie n wystąpień poprzedzającej pozycji.

+ +

Na przykład, /u{2}/ nie znajdzie "u" w "cukierek", ale znajdzie wszystkie "u" w "cuukierek" i pierwsze dwa "u" w "cuuukierek".

+
{n,} +

Gdzie n jest dodatnią liczbą całkowitą. Znajduje, co najmniej n wystąpień poprzedzającej pozycji.

+ +

Na przykład, /u{2,}/ nie znajdzie "u" w "cukierek", ale znajdzie wszystkie "u" w "cuukierek" i w "cuuukierek".

+
{n,m} +

Gdzie n i m są pozytywnymi liczbami całkowitymi. Wyszukuje, co najmniej n i co najwyżej m wystąpień poprzedzającego wyrażenia.

+ +

Na przykład, /u{1,3}/ nie znajdzie niczego w "ckierek", znajdzie "u" w "cukierek", znajdzie dwa "u" w "cuukierek" i pierwsze trzy "u" w "cuuuuukierek". Zauważ, że podczas wyszukiwania w "cuuuuukierek", wynik wyszukiwania to "uuu" mimo iż ciąg oryginalny zawiera więcej liter "u".

+
xyz +

Zestaw znaków. Wyszukuje jakikolwiek z podanych znaków. Możesz podać przedział znaków używając myślnika.

+ +

Na przykład, abcd oznacza tyle samo, co a-d. Wyrażenia te znajdą "b" w "buziak" i "d" w "kasza".

+
^xyz +

Przeciwny zestaw znaków. Wyszukuje cokolwiek, co nie jest wewnątrz nawiasów. Podobnie jak powyżej można podać zakres znaków używając myślnika.

+ +

Na przykład, ^abc oznacza tyle samo, co ^a-c. Wyrażenia te znajdą "u" w "buziak" i "k" w "kasza".

+
\\b +

Wyszukuje znak backspace (nie mylić z \b).

+
\b +

Wyszukuje granicę wyrazów (ang. word boundary), jak na przykład spację (nie mylić z \\b).

+ +

Na przykład, /\bn\w/ zaznaczy "no" w "noonday"; /\wy\b/ zaznaczy "ly" w "possibly yesterday".

+
\B +

Znajduje brak granicy niewyrazu (ang. non-word boundary).

+ +

Na przykład, /\w\Bn/ zaznaczy "on" w "noonday", a /y\B\w/ zaznaczy "ye" w "possibly yesterday".

+
\cX +

Gdzie X jest literą od A do Z. Zaznacza znak kontrolny w ciągu.

+ +

Na przykład, /\cM/ zaznaczy control-M w stringu.

+
\d +

Znajduje cyfrę. Odpowiednik 0-9.

+ +

Na przykład, /\d/ lub /0-9/<code> zaznaczy "2" w "B2 jest numerem pokoju". </td> </tr>

+
\D +

Wyszukuje jakikolwiek znak nieliczbowy. Odpowiednik ^0-9') }}.

+ +

Na przykład, /\D/ lub /^0-9/ zaznaczy "B" w "B2 jest numerem pokoju".

+
\f +

Znajduje znak wysuwu wiersza (form feed).

+
\n +

Znajduje znak następnego wiersza (line feed).

+
\r +

Znajduje znak powrotu karetki (carriage return).

+
\s +

Znajduje pojedynczy biały znak (ang. white space character), wliczając w to spację, tabulator, znak wysuwu wiersza, znak następnego wiersza. Odpowiednik \\f\\n\\r\\t\\u00A0\\u2028\\u2029.

+ +

Na przykład, /\s\w*/ zaznaczy " bar" w "foo bar".

+
\S +

Zaznacza jakikolwiek znak inny niż biały (ang. white space). Odpowiednik ^ \\f\\n\\r\\t\\u00A0\\u2028\\u2029.

+ +

Na przykład, /\S/\w* zaznaczy "foo" w "foo bar".

+
\t +

Znajduje tabulator.

+
\v +

Znajduje pionowy tabulator (ang. vertical tab).

+
\w +

Znajduje jakikolwiek znak alfanumeryczny i znak podkreślenia _. Odpowiednik A-Za-z0-9_.

+ +

Na przykład, /\w/ zaznaczy "j" w "jabłko", "5" w "??5.28", i "3" w "3D".

+
\W +

Zaznaczy jakikolwiek znak niewyrazowy. Odpowiednik ^A-Za-z0-9_.

+ +

Na przykład, /\W/ lub /^$A-Za-z0-9_/ znajdzie "%" w "50%".

+
\n +

Gdzie n jest pozytywną liczbą całkowitą. Odwołanie wsteczne (ang. back reference) do ostatniego podciągu (substring) pasującego do n wyrażenia umieszczonego w nawiasie (licząc od nawiasu otwierającego "(").

+ +

Na przykład, /jabłko(,)\spomarańcz\1/ pasuje do "jabłko, pomarańcz," w "jabłko, pomarańcz, wiśnia, brzoskwinia". Dokładniejszy przykład znajduje się po tabeli.

+
\0 +

Wyszukuje znak NUL. Bezpośrednio po \0 nie powinna znajdować się żadna liczba.

+
\xhh +

Znajduje znak o kodzie hh (dwie cyfry szesnastkowe)

+
\uhhhh +

Znajduje znak o kodzie hhhh (cztery cyfry szesnastkowe).

+
+ +

Notacja tekstowa zostaje skompilowana, kiedy wyrażenie regularne jest wykonane. Używaj notacji tekstowej wtedy, kiedy wyrażenie regularne pozostanie niezmienione. Na przykład, jeśli użyjesz notacji tekstowej do konstrukcji wyrażenia regularnego w pętli, wyrażenie to nie zostanie przekompilowane podczas każdej iteracji.

+ +

Konstruktor obiektu wyrażenia regularnego, na przykład new RegExp("ab+c"), pozwala na kompilację podczas czasu wykonywania (ang. runtime compilation) wyrażenia. Używaj funkcji konstruktora, kiedy wiesz, że wzór wyrażenia regularnego będzie się zmieniać lub gdy nie znasz tego wzoru i pobierasz go z innego źródła, jak na przykład wejście użytkownika.

+ +

Oddzielny predefiniowany obiekt RegExp jest dostępny dla każdego okna, to jest każdy oddzielny wątek uruchomienia JavaScriptu dostaje jego własny obiekt RegExp. Jako że każdy skrypt uruchamiany jest cały w oddzielnym wątku, zapewnia to, iż oddzielne skrypty nie nadpisują wartości obiektu RegExp.

+ +

Własności

+ +
+
{{jsxref("RegExp.prototype")}}
+
Pozwala na dodanie własności wszystkim obiektom.
+
RegExp.length
+
Wartość parametru RegExp.length wynosi 2.
+
{{jsxref("RegExp.lastIndex")}}
+
Indeks, od którego rozpoczynać następne szukanie.
+
+ +

Metody

+ +

Globalny objekt RegExp nie posiada własnych metod, jednam może dziedziczyć metody z innych obiektów.

+ +

Przykłady

+ +

Przykład: Zastosowanie metody replace

+ +

Poniższy przykład używa metodę replace do zamiany wyrazów w ciągu (stringu). Podczas zamiany tekstu, skrypt używa "$1" i "$2" do oznaczenia wyników odpowiadających im nawiasów we wzorze wyrażenia regularnego.

+ +
var re = /(\w+)\s(\w+)/;
+var str = "Jan Kowalski";
+var newstr = str.replace(re, "$2, $1");
+document.write(newstr);
+
+ +

Wyświetli "Kowalski, Jan".

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/regexp/lastmatch/index.html b/files/pl/web/javascript/reference/global_objects/regexp/lastmatch/index.html new file mode 100644 index 0000000000..4d229d5d81 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/regexp/lastmatch/index.html @@ -0,0 +1,54 @@ +--- +title: RegExp.lastMatch ($&) +slug: Web/JavaScript/Referencje/Obiekty/RegExp/lastMatch +translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/lastMatch +--- +
{{JSRef}} {{non-standard_header}}
+ +

Niestandardowa właściwość lastMatch jest właściwością statyczną, tylko do odczytu wyrażeń regularnych, który zawiera ostatnie dopasowane znaki. RegExp.$& jest aliasem tej właściwości.

+ +

Syntax

+ +
RegExp.lastMatch
+RegExp['$&']
+
+ +

Description

+ +

The lastMatch property is static, it is not a property of an individual regular expression object. Instead, you always use it as RegExp.lastMatch or RegExp['$&'].

+ +

The value of the lastMatch property is read-only and modified whenever a successful match is made.

+ +

You can not use the shorthand alias with the dot property accessor (RegExp.$&), because the parser expects an expression with "&" in that case and a {{jsxref("SyntaxError")}} is thrown. Use the bracket notation for property access.

+ +

Examples

+ +

Using lastMatch and $&

+ +
var re = /hi/g;
+re.test('hi there!');
+RegExp.lastMatch; // "hi"
+RegExp['$&'];     // "hi"
+
+ +

Specifications

+ +

Niestandardowe. Nie jest częścią aktualnej specyfikacji.

+ +

Browser compatibility

+ +
+ + +

{{Compat("javascript.builtins.RegExp.lastMatch")}}

+
+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/regexp/source/index.html b/files/pl/web/javascript/reference/global_objects/regexp/source/index.html new file mode 100644 index 0000000000..78cf4c2a64 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/regexp/source/index.html @@ -0,0 +1,29 @@ +--- +title: RegExp.prototype.source +slug: Web/JavaScript/Referencje/Obiekty/RegExp/source +tags: + - JavaScript + - Property + - Prototype + - RegExp +translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/source +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Własność tylko do odczytu stanowiąca wzór tekstu, wykluczając przesyłanie slashy.

+ +
{{js_property_attributes(0, 0, 1)}}
+ +

Opis

+ +

source jest własnością indywidualnej instancji wyrażenia regularnego obiektu.

+ +

Nie możesz zmienić tej własności bezpośrednio.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/regexp/test/index.html b/files/pl/web/javascript/reference/global_objects/regexp/test/index.html new file mode 100644 index 0000000000..e654bfb236 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/regexp/test/index.html @@ -0,0 +1,53 @@ +--- +title: RegExp.prototype.test() +slug: Web/JavaScript/Referencje/Obiekty/RegExp/test +tags: + - JavaScript + - Method + - Prototype + - RegExp +translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/test +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Wykonuje poszukiwanie łańcucha znaków pomiędzy wyrażeniem regularnym i określonym wzorcem. Zwraca true lub false.

+ +

Składnia

+ +
regexObj.test(str)
+ +

Parametry

+ +
+
str 
+
Łańcuch znaków w zależności od tego, czym jest wyrażenie regularne.
+
+ +

Opis

+ +

Jeśli chcesz wiedzieć, czy wzorzec został znaleziony w łańcuchu znaków zastosuj metodę test (podobną do metody {{jsxref("String.prototype.search()")}}); aby uzyskać więcej informacji (lecz powolniej wykonywana) zastosuj metodę {{jsxref("RegExp.prototype.exec()", "exec()")}}(podobną do metody {{jsxref("String.prototype.match()")}} ).

+ +

Przykłady

+ +

Przykład: Zastosowanie test()

+ +

Poniższy funkcja wypisuje wiadomość, której tekst zależy od powodzenia testu:

+ +
function testinput(re, str){
+   if (re.test(str)) {
+      midstring = " zawiera ";
+   } else {
+      midstring = " nie zawiera ";
+   }
+   console.log(str + midstring + re.source);
+}
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/regexp/tosource/index.html b/files/pl/web/javascript/reference/global_objects/regexp/tosource/index.html new file mode 100644 index 0000000000..4ac074392b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/regexp/tosource/index.html @@ -0,0 +1,47 @@ +--- +title: RegExp.prototype.toSource() +slug: Web/JavaScript/Referencje/Obiekty/RegExp/toSource +tags: + - JavaScript + - Method + - Prototype + - RegExp +translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/toSource +--- +

{{JSRef}}{{Non-standard_header}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący kod źródłowy obiektu.

+ +

Składnia

+ +
regexObj.toSource()
+
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Metoda toSource() zwraca następujące wartości:

+ + + +

Ta metoda jest często nazywana wewnętrzną metodą JavaScriptu i nie jest widoczna w kodzie.

+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/regexp/tostring/index.html b/files/pl/web/javascript/reference/global_objects/regexp/tostring/index.html new file mode 100644 index 0000000000..fb78233ff2 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/regexp/tostring/index.html @@ -0,0 +1,46 @@ +--- +title: RegExp.prototype.toString() +slug: Web/JavaScript/Referencje/Obiekty/RegExp/toString +tags: + - JavaScript + - Method + - Prototype + - RegExp +translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/toString +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący określony obiekt.

+ +

Składnia

+ +
regexObj.toString();
+ +

Parametry

+ +

Brak.

+ +

Opis

+ +

Obiekt {{jsxref("RegExp")}} przypisuje toString() metodzie obiektu {{jsxref("Object")}}; nie dziedziczy {{jsxref("Object.prototype.toString()")}}. Dla obiektu {{jsxref("RegExp")}}, metoda toString() zwraca łańcuch znaków reprezentujący obiekt.

+ +

Przykłady

+ +

Przykład: Zastosowanie toString()

+ +

Następujący przykład wyświetla wartość łańcucha znaków obiektu RegExp:

+ +
var myExp = new RegExp('a+b+c');
+console.log(myExp.toString());  // wyświetli '/a+b+c/'
+
+var foo = new RegExp('bar', 'g');
+console.log(foo.toString());    // wyświetli '/bar/g'
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/set/add/index.html b/files/pl/web/javascript/reference/global_objects/set/add/index.html new file mode 100644 index 0000000000..397939f84e --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/set/add/index.html @@ -0,0 +1,134 @@ +--- +title: Set.prototype.add() +slug: Web/JavaScript/Referencje/Obiekty/Set/Set.prototype.add() +tags: + - ECMAScript 2015 + - JavaScript + - Method + - Prototype + - set +translation_of: Web/JavaScript/Reference/Global_Objects/Set/add +--- +
{{JSRef}}
+ +

Metoda add() dodaje nowy element o określonej wartości (value) na koniec obieku Set.

+ +

Składnia

+ +
mySet.add(value);
+ +

Parametry

+ +
+
value
+
Wymagany parametr. Wartość elementu, która zostanie dodana do obieku Set.
+
+ +

Zwracana wartość

+ +

Obiekt Set.

+ +

Przykłady

+ +

Użycie metody add

+ +
var mySet = new Set();
+
+mySet.add(1);
+mySet.add(5).add('some text'); // można stworzyć "łańcuch"
+
+console.log(mySet);
+// Set [1, 5, "some text"]
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-set.prototype.add', 'Set.prototype.add')}}{{Spec2('ES2015')}}Początkowa definicja
{{SpecName('ESDraft', '#sec-set.prototype.add', 'Set.prototype.add')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność przeglądarek

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support38{{CompatVersionUnknown}}{{CompatGeckoDesktop("13.0")}}11257.1
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}38{{CompatVersionUnknown}}{{CompatGeckoMobile("13.0")}}{{CompatNo}}{{CompatNo}}8
+
+ +

Specyficzne zachowania w przeglądarkach

+ + + +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/set/clear/index.html b/files/pl/web/javascript/reference/global_objects/set/clear/index.html new file mode 100644 index 0000000000..85ca894da9 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/set/clear/index.html @@ -0,0 +1,124 @@ +--- +title: Set.prototype.clear() +slug: Web/JavaScript/Referencje/Obiekty/Set/Set.prototype.clear() +tags: + - ECMAScript 2015 + - JavaScript + - Method + - Prototype + - set +translation_of: Web/JavaScript/Reference/Global_Objects/Set/clear +--- +
{{JSRef}}
+ +

Metoda clear() usuwa wszystkie elementy obiektu Set.

+ +

Składnia

+ +
mySet.clear();
+ +

Zwracana wartość

+ +

{{jsxref("undefined")}}.

+ +

Przykłady

+ +

Użycie metody clear

+ +
var mySet = new Set();
+mySet.add(1);
+mySet.add('foo');
+
+mySet.size;       // 2
+mySet.has('foo'); // true
+
+mySet.clear();
+
+mySet.size;       // 0
+mySet.has('bar')  // false
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-set.prototype.clear', 'Set.prototype.clear')}}{{Spec2('ES2015')}}Początkowa definicja.
{{SpecName('ESDraft', '#sec-set.prototype.clear', 'Set.prototype.clear')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność przeglądarek

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support38{{CompatVersionUnknown}}{{CompatGeckoDesktop("19.0")}}11257.1
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}25{{CompatVersionUnknown}}{{CompatGeckoMobile("19.0")}}{{CompatNo}}{{CompatNo}}8
+
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/set/delete/index.html b/files/pl/web/javascript/reference/global_objects/set/delete/index.html new file mode 100644 index 0000000000..7071c9e4eb --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/set/delete/index.html @@ -0,0 +1,102 @@ +--- +title: Set.prototype.delete() +slug: Web/JavaScript/Referencje/Obiekty/Set/Set.prototype.delete() +tags: + - ECMAScript 2015 + - JavaScript + - Method + - Prototype + - set +translation_of: Web/JavaScript/Reference/Global_Objects/Set/delete +--- +
{{JSRef}}
+ +

Metoda delete() usuwa określony element z obiektu Set.

+ +

Składnia

+ +
mySet.delete(value);
+ +

Parametry

+ +
+
value
+
Wymagany parametr. Wartość elementu, która zostanie usunięta z obiektu Set.
+
+ +

Zwracana wartość

+ +

true jeżeli element został pomyślnie usunięty, w innym wypadku false.

+ +

Przykłady

+ +

Użycie metody delete

+ +
var mySet = new Set();
+mySet.add('foo');
+
+mySet.delete('bar'); // Zwraca false. Brak elementu "bar" do usunięca.
+mySet.delete('foo'); // Zwraca true.  Usunięto pomyślnie.
+
+mySet.has('foo');    // Zwraca false. Element "foo" nie znajduje się już w Set.
+
+ +

Jak usunąć obiekt z Set:

+ +
var points = new Set(); // Tworzy Set
+
+points.add({x: 10, y: 20}); // Dodaje obiekt do Set
+points.add({x: 20, y: 30}); // Dodaje obiekt do Set
+
+// Usuwa point, dla którego `x > 10`
+points.forEach(function(point){
+  if(point.x > 10){
+    points.delete(point);
+  }
+})
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-set.prototype.delete', 'Set.prototype.delete')}}{{Spec2('ES2015')}}Początkowa definicja
{{SpecName('ESDraft', '#sec-set.prototype.delete', 'Set.prototype.delete')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność przeglądarek

+ +

 

+ + + +

{{Compat("javascript.builtins.Set.delete")}}

+ +

 

+ +
 
+ +
 
+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/set/index.html b/files/pl/web/javascript/reference/global_objects/set/index.html new file mode 100644 index 0000000000..ca9cc37a93 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/set/index.html @@ -0,0 +1,486 @@ +--- +title: Set +slug: Web/JavaScript/Referencje/Obiekty/Set +tags: + - ECMAScript 2015 + - ECMAScript6 + - Global Objects + - JavaScript + - Object + - set +translation_of: Web/JavaScript/Reference/Global_Objects/Set +--- +
{{JSRef}}
+ +

Obiekt Set umożliwia przechowywanie unikalnych wartości każdego typu, zarówno {{Glossary("Primitive", "primitywów")}} jak i obiektów.

+ +

Składnia

+ +
new Set([iterable]);
+ +

Parametry

+ +
+
iterable
+
Jeżeli przekażesz obiekt iterowalny, wszystkie jego elementy zostaną dodane do nowego Set. Podczas gdy nie przekażemy żadnego parametru lub wartość parametru będzie równa null, zostanie stworzony pusty Set.
+
+ +

Zwracana wartość

+ +

Nowy obiekt Set.

+ +

Opis

+ +

Obiekt Set jest kolekcją wartości. Możesz iterować po elementach Set w kolejności, w której zostały dodane. Wartość w Set może występować tylko jeden raz.

+ +

Równość wartości

+ +

Dlatego, że każda wartość w Set musi być unikalna, musi zostać to sprawdzone. We wcześniejszych specyfikacjach ECMAScript nie było to oparte na tym samym algorytmie co w przypadku operatora ===. Konkretnie dla Set +0 (co jest tym samym co -0) i -0 były innymi wartościami. W specyfikacji ECMAScript 2015 zostało to zmienione. Zobacz "Value equality for -0 and 0" w tabeli Kompatybilność z przeglądarkami.

+ +

NaN i undefined mogą być przechowywane w Set. NaN w Set uważane jest za równe NaN, podczas gdy NaN !== NaN zwraca true

+ +

Własności

+ +
+
Set.length
+
Wartość length zawsze wynosi 0.
+
{{jsxref("Set.@@species", "get Set[@@species]")}}
+
Funkcja wykorzystywana do stworzenia pochodnych obiektów.
+
{{jsxref("Set.prototype")}}
+
Reprezentuje prototyp konstruktora Set. Pozwala na dodanie własności do obiektu Set.
+
+ +

Instancje Set

+ +

Wszystkie instancje Set dziedziczą od {{jsxref("Set.prototype")}}.

+ +

Własności

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/Set/prototype','Properties')}}

+ +

Metody

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/Set/prototype','Methods')}}

+ +

Przykłady

+ +

Użycie obiektu Set

+ +
var mySet = new Set();
+
+mySet.add(1); // Set { 1 }
+mySet.add(5); // Set { 1, 5 }
+mySet.add(5); // Set { 1, 5 }
+mySet.add('some text'); // Set { 1, 5, 'some text' }
+var o = {a: 1, b: 2};
+mySet.add(o);
+
+mySet.add({a: 1, b: 2}); // o jest referencją do innego obiektu, więc dwa obiekty zostają dodane do Set.
+
+mySet.has(1); // true
+mySet.has(3); // false, 3 nie zostało dodane do Set.
+mySet.has(5);              // true
+mySet.has(Math.sqrt(25));  // true
+mySet.has('Some Text'.toLowerCase()); // true
+mySet.has(o); // true
+
+mySet.size; // 5
+
+mySet.delete(5); // Usuwa 5 z Set.
+mySet.has(5);    // false, 5 zostało usunięte.
+
+mySet.size; // 4, usuneliśmy jedną wartość.
+console.log(mySet);// Set {1, "some text", Object {a: 1, b: 2}, Object {a: 1, b: 2}}
+ +

Iterowanie po Set.

+ +
// Iterowanie po items w Set.
+// wypisuje items w kolejności: 1, "some text", {"a": 1, "b": 2}
+for (let item of mySet) console.log(item);
+
+// wypisuje items w kolejności: 1, "some text", {"a": 1, "b": 2}
+for (let item of mySet.keys()) console.log(item);
+
+// wypisuje items w kolejności: 1, "some text", {"a": 1, "b": 2}
+for (let item of mySet.values()) console.log(item);
+
+// wypisuje items w kolejności: 1, "some text", {"a": 1, "b": 2}
+//(key i value są takie same)
+for (let [key, value] of mySet.entries()) console.log(key);
+
+// zamienia Set na Array, przy użyciu Array.from
+var myArr = Array.from(mySet); // [1, "some text", {"a": 1, "b": 2}]
+
+// następujące funkcje również zadziałają, jeżeli skrypt odpalony jest w dokumencie HTML
+mySet.add(document.body);
+mySet.has(document.querySelector('body')); // true
+
+// zamiana Array na Set i na odwrót
+mySet2 = new Set([1, 2, 3, 4]);
+mySet2.size; // 4
+[...mySet2]; // [1, 2, 3, 4]
+
+// Set z wartościami, które są w set1 i set2, może być uzyskany następująco
+var intersection = new Set([...set1].filter(x => set2.has(x)));
+
+// Set z różnicami wartości set1 i set2 może być uzyskany następująco
+var difference = new Set([...set1].filter(x => !set2.has(x)));
+
+// iterowanie po Set za pomocą .forEach
+mySet.forEach(function(value) {
+  console.log(value);
+});
+// 1
+// 2
+// 3
+// 4
+ +

Implementacja podstawowych operacji Set

+ +
Set.prototype.isSuperset = function(subset) {
+    for (var elem of subset) {
+        if (!this.has(elem)) {
+            return false;
+        }
+    }
+    return true;
+}
+
+Set.prototype.union = function(setB) {
+    var union = new Set(this);
+    for (var elem of setB) {
+        union.add(elem);
+    }
+    return union;
+}
+
+Set.prototype.intersection = function(setB) {
+    var intersection = new Set();
+    for (var elem of setB) {
+        if (this.has(elem)) {
+            intersection.add(elem);
+        }
+    }
+    return intersection;
+}
+
+Set.prototype.difference = function(setB) {
+    var difference = new Set(this);
+    for (var elem of setB) {
+        difference.delete(elem);
+    }
+    return difference;
+}
+
+// Przykłady
+var setA = new Set([1, 2, 3, 4]),
+    setB = new Set([2, 3]),
+    setC = new Set([3, 4, 5, 6]);
+
+setA.isSuperset(setB); // => true
+setA.union(setC); // => Set [1, 2, 3, 4, 5, 6]
+setA.intersection(setC); // => Set [3, 4]
+setA.difference(setC); // => Set [1, 2]
+
+
+ +

Relacje z Tablicami (Array)

+ +
var myArray = ['value1', 'value2', 'value3'];
+
+// Użycie konstruktora Set do zamiany Array na Set.
+var mySet = new Set(myArray);
+
+mySet.has('value1'); // => true
+
+// Użycie spread operator do zamiany Set na Array.
+console.log([...mySet]); // Will show you exactly the same Array as myArray
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-set-objects', 'Set')}}{{Spec2('ES2015')}}Początkowa definicja.
{{SpecName('ESDraft', '#sec-set-objects', 'Set')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność przeglądarek

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureChromeEdgeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support +

{{ CompatChrome(38) }} [1]

+
12{{ CompatGeckoDesktop("13") }}{{ CompatIE("11") }}257.1
Constructor argument: new Set(iterable){{ CompatChrome(38) }}12{{ CompatGeckoDesktop("13") }}{{CompatNo}}259.0
iterable{{ CompatChrome(38) }}12{{ CompatGeckoDesktop("17") }}{{CompatNo}}257.1
Set.add() returns the set{{ CompatChrome(38) }}12{{ CompatGeckoDesktop("13") }}{{CompatNo}}257.1
Set.clear(){{ CompatChrome(38) }}12{{CompatGeckoDesktop("19")}}{{ CompatIE("11") }}257.1
Set.keys(), Set.values(), Set.entries(){{ CompatChrome(38) }}12{{CompatGeckoDesktop("24")}}{{CompatNo}}257.1
Set.forEach(){{ CompatChrome(38) }}12{{CompatGeckoDesktop("25")}}{{ CompatIE("11") }}257.1
Value equality for -0 and 0{{ CompatChrome(38) }}12{{CompatGeckoDesktop("29")}}{{CompatNo}}25{{CompatSafari(9)}}
Constructor argument: new Set(null){{CompatVersionUnknown}}12{{CompatGeckoDesktop("37")}}{{CompatIE(11)}}{{CompatVersionUnknown}}{{CompatSafari(7.1)}}
Monkey-patched add() in Constructor{{CompatVersionUnknown}}12{{CompatGeckoDesktop("37")}}{{CompatNo}}{{CompatVersionUnknown}}{{CompatSafari(9)}}
Set[@@species]{{ CompatChrome(51) }}13{{CompatGeckoDesktop("41")}}{{CompatNo}}{{ CompatOpera(38) }}{{CompatSafari(10)}}
Set() without new throws{{CompatVersionUnknown}}12{{CompatGeckoDesktop("42")}}{{CompatIE(11)}}{{CompatVersionUnknown}}9
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatChrome(38)}} [1]{{CompatVersionUnknown}}{{ CompatGeckoMobile("13") }}{{CompatNo}}{{CompatNo}}8
Constructor argument: new Set(iterable){{CompatNo}}{{CompatChrome(38)}}{{CompatVersionUnknown}}{{ CompatGeckoMobile("13") }}{{CompatNo}}{{CompatNo}}9
iterable{{CompatNo}}{{CompatNo}}{{CompatVersionUnknown}}{{ CompatGeckoMobile("17") }}{{CompatNo}}{{CompatNo}}8
Set.clear(){{CompatNo}}{{ CompatChrome(38) }}{{CompatVersionUnknown}}{{CompatGeckoMobile("19")}}{{CompatNo}}{{CompatNo}}8
Set.keys(), Set.values(), Set.entries(){{CompatNo}}{{ CompatChrome(38) }}{{CompatVersionUnknown}}{{CompatGeckoMobile("24")}}{{CompatNo}}{{CompatNo}}8
Set.forEach(){{CompatNo}}{{ CompatChrome(38) }}{{CompatVersionUnknown}}{{CompatGeckoMobile("25")}}{{CompatNo}}{{CompatNo}}8
Value equality for -0 and 0{{CompatNo}}{{ CompatChrome(38) }}{{CompatVersionUnknown}}{{CompatGeckoMobile("29")}}{{CompatNo}}{{CompatNo}}9
Constructor argument: new Set(null){{CompatUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile("37")}}{{CompatUnknown}}{{CompatUnknown}}8
Monkey-patched add() in Constructor{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile("37")}}{{CompatUnknown}}{{CompatUnknown}}9
Set[@@species]{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile("41")}}{{CompatUnknown}}{{CompatUnknown}}10
Set() without new throws{{CompatUnknown}}{{CompatUnknown}}{{CompatVersionUnknown}}{{CompatGeckoMobile("42")}}{{CompatUnknown}}{{CompatUnknown}}9
+
+ +

[1] The feature was available behind a preference from Chrome 31. In chrome://flags, activate the entry “Enable Experimental JavaScript”.

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/anchor/index.html b/files/pl/web/javascript/reference/global_objects/string/anchor/index.html new file mode 100644 index 0000000000..737c385889 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/anchor/index.html @@ -0,0 +1,56 @@ +--- +title: String.prototype.anchor() +slug: Web/JavaScript/Referencje/Obiekty/String/anchor +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/anchor +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Tworzy kotwicę HTML {{HTMLElement("a")}} do użycia jako cel odnośnika.

+ +

Składnia

+ +
str.anchor(name)
+ +

Parametry

+ +
+
name
+
Łańcuch znaków.
+
+ +

Opis

+ +

Use the anchor() method to programmatically create and display an anchor in a document.

+ +

W składni łańcuch znaków reprezentuje literał tekstowy, który ma zobaczyć użytkownik. Łańcuch name reprezentuje atrybut name znacznika a.

+ +

Kotwice stworzone za pomocą metody anchor stają się elementami tablicy document.anchors.

+ +

Przykłady

+ +

Przykład: Zastosowanie anchor()

+ +

Następujący przykład wewnątrz kodu HTML elementu script:

+ +
var myString = "Tabela zawartości";
+
+document.body.innerHTML = myString.anchor("contents_anchor");
+
+ +

spowoduje otrzymanie na wyjściu kodu HTML:

+ +
<a name="contents_anchor">Tabela zawartości</a>
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/big/index.html b/files/pl/web/javascript/reference/global_objects/string/big/index.html new file mode 100644 index 0000000000..62914dfa9c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/big/index.html @@ -0,0 +1,43 @@ +--- +title: String.prototype.big() +slug: Web/JavaScript/Referencje/Obiekty/String/big +tags: + - Deprecated + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/big +--- +
{{JSRef}} {{deprecated_header}}
+ +

Podsumowanie

+ +

Powoduje, iż łańcuch znaków zostanie wyświetlony jakby znajdował się wewnątrz znacznika {{HTMLElement("big")}}.

+ +

Składnia

+ +
str.big()
+ +

Opis

+ +

The big() method embeds a string in a <big> tag: "<big>str</big>".

+ +

Przykłady

+ +

Przykład: Zastosowanie big()

+ +

Następujący przykład stosuje metodę string do zmiany rozmiaru łańcucha znaków:

+ +
var worldString = "Witaj, Świecie";
+
+console.log(worldString.small());     // <small>Witaj, Świecie</small>
+console.log(worldString.big());       // <big>Witaj, Świecie</big>
+console.log(worldString.fontsize(7)); // <fontsize=7>Witaj, Świecie</fontsize>
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/blink/index.html b/files/pl/web/javascript/reference/global_objects/string/blink/index.html new file mode 100644 index 0000000000..056dbc3792 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/blink/index.html @@ -0,0 +1,50 @@ +--- +title: String.prototype.blink() +slug: Web/JavaScript/Referencje/Obiekty/String/blink +tags: + - Deprecated + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/blink +--- +
{{JSRef}} {{deprecated_header}}
+ +

Podsumowanie

+ +

Powoduje, iż łańcuch będzie migotał tak, jakby był on wewnątrz znacznika {{HTMLElement("blink")}}.

+ +
+

Warning: Blinking text is frowned upon by several accessibility standards. The <blink> element itself is non-standard and deprecated!

+
+ +

Składnia

+ +
str.blink()
+ +

Opis

+ +

The blink() method embeds a string in a <blink> tag: "<blink>str</blink>".

+ +

Przykłady

+ +

Przykład: Zastosowanie blink()

+ +

Następujący przykład stosuje metodę string do zmiany formatowania łańcucha znaków:

+ +
var worldString="Witaj, Świecie";
+
+console.log(worldString.blink());   // <blink>Witaj, Świecie</blink>
+console.log(worldString.bold());    // <bold>Witaj, Świecie</bold>
+console.log(worldString.italics()); // <i>Witaj, Świecie</i>
+console.log(worldString.strike());  // <s>Witaj, Świecie</s>
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/bold/index.html b/files/pl/web/javascript/reference/global_objects/string/bold/index.html new file mode 100644 index 0000000000..0708d5799e --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/bold/index.html @@ -0,0 +1,45 @@ +--- +title: String.prototype.bold() +slug: Web/JavaScript/Referencje/Obiekty/String/bold +tags: + - Deprecated + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/bold +--- +

{{JSRef}}{{deprecated_header}}

+ +

Podsumowanie

+ +

Powoduje wyświetlenie łańcucha znaków jako pogrubienia, jakby był w znaczniku {{HTMLElement("b")}}.

+ +

Składnia

+ +
str.bold()
+ +

Opis

+ +

The bold() method embeds a string in a <b> tag: "<b>str</b>".

+ +

Przykłady

+ +

Przykład: Zastosowanie bold()

+ +

Następujący przykład stosuje metodę string do zmiany rozmiaru łańcucha znaków:

+ +
var worldString="Witaj, Świecie";
+
+console.log(worldString.blink());   // <blink>Witaj, Świecie</blink>
+console.log(worldString.bold());    // <bold>Witaj, Świecie</bold>
+console.log(worldString.italics()); // <i>Witaj, Świecie</i>
+console.log(worldString.strike());  // <s>Witaj, Świecie</s>
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/charat/index.html b/files/pl/web/javascript/reference/global_objects/string/charat/index.html new file mode 100644 index 0000000000..30ce5303c2 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/charat/index.html @@ -0,0 +1,68 @@ +--- +title: String.prototype.charAt() +slug: Web/JavaScript/Referencje/Obiekty/String/charAt +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/charAt +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca określony znak z łańcucha znaków.

+ +

Składnia

+ +
str.charAt(index)
+ +

Parametry

+ +
+
index 
+
Liczba całkowita z przedziału od 0 do liczby o 1 mniejszej od długości łańcucha.
+
+ +

Opis

+ +

Znaki w łańcuchu znaków są indeksowane od lewej do prawej strony. Indeksem pierwszego znaku jest 0, a indeksem ostatniego znaku w łańcuchu znaków o nazwie stringName jest stringName.length - 1. Jeśli dostarczona wartość parametru index znajduje się poza zakresem, JavaScript zwróci pusty łańcuch znaków.

+ +

Przykłady

+ +

Przykład: Wyświetlanie różnych znaków z określonego łańcucha znaków

+ +

Poniższy przykład wyświetla różne znaki łańcucha "Brave new world":

+ +
var anyString="Brave new world";
+
+console.log("Znakiem o indeksie 0   jest '" + anyString.charAt(0)   + "'");
+console.log("Znakiem o indeksie 1   jest '" + anyString.charAt(1)   + "'");
+console.log("Znakiem o indeksie 2   jest '" + anyString.charAt(2)   + "'");
+console.log("Znakiem o indeksie 3   jest '" + anyString.charAt(3)   + "'");
+console.log("Znakiem o indeksie 4   jest '" + anyString.charAt(4)   + "'");
+console.log("Znakiem o indeksie 999 jest '" + anyString.charAt(999) + "'");
+
+ +

Powyższy kod wyświetli:

+ +
Znakiem o indeksie 0   jest 'B'
+Znakiem o indeksie 1   jest 'r'
+Znakiem o indeksie 2   jest 'a'
+Znakiem o indeksie 3   jest 'v'
+Znakiem o indeksie 4   jest 'e'
+Znakiem o indeksie 999 jest ''
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/charcodeat/index.html b/files/pl/web/javascript/reference/global_objects/string/charcodeat/index.html new file mode 100644 index 0000000000..21c7822f12 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/charcodeat/index.html @@ -0,0 +1,42 @@ +--- +title: String.prototype.charCodeAt() +slug: Web/JavaScript/Referencje/Obiekty/String/charCodeAt +tags: + - JavaScript + - Method + - Prototype + - String + - Unicode +translation_of: Web/JavaScript/Reference/Global_Objects/String/charCodeAt +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca liczbę oznaczającą wartość Unicode znaku o podanym indeksie.

+ +

Składnia

+ +
str.charCodeAt(index)
+ +

Parametry

+ +
+
index 
+
Liczba całkowita z przedziału od 0 do liczby o 1 mniejszej od długości łańcucha.
+
+ +

Opis

+ +

Wartości Unicode mieszczą się w zakresie od 0 do 65535. Pierwsze 128 wartości Unicode jest takie same jak w zbiorze znaków ASCII. Aby dowiedzieć się więcej o Unicode, zobacz Przewodnik po języku JavaScript.

+ +

Zgodność wsteczna: JavaScript 1.2 — Metoda charCodeAt zwraca liczbę wskazującą wartość ze zbioru kodowania ISO-Latin-1 znaku o podanym indeksie. Zbiór kodowania ISO-Latin-1 posiada zakres od 0 do 255. Znaki od 0 do 127 są identyczne, co te w zbiorze znaków ASCII.

+ +

Przykłady

+ +

Przykład: Zastosowanie charCodeAt()

+ +

Następujący przykład zwróci 65, wartość A w Unicode.

+ +
"ABC".charCodeAt(0); // zwróci 65
+
diff --git a/files/pl/web/javascript/reference/global_objects/string/concat/index.html b/files/pl/web/javascript/reference/global_objects/string/concat/index.html new file mode 100644 index 0000000000..b4361f0fd7 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/concat/index.html @@ -0,0 +1,44 @@ +--- +title: String.prototype.concat() +slug: Web/JavaScript/Referencje/Obiekty/String/concat +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/concat +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Łączy tekst dwóch lub więcej łańcuchów znaków i zwraca nowy łańcuch.

+ +

Składnia

+ +
str.concat(string2, string3[, ..., stringN])
+ +

Parametry

+ +
+
string2...string + N +  
+
Łańcuchy znaków mające być dołączone do tego łańcucha.
+
+ +

Opis

+ +

concat() łączy tekst jednego lub więcej łańcuchów znaków i zwraca nowy łańcuch znaków. Zmiana tekstu w jednym łańcuchu znaków nie ma wpływu na drugi łańcuch.

+ +

Przykłady

+ +

Przykład: Zastosowanie concat()

+ +

Następujący przykład łączy łańcuchy znaków w nowy łańcuch znaków.

+ +
var s1="Och, ";
+var s2="jaki piękny ";
+var s3="poranek.";
+var s4=s1.concat(s2,s3); // zwraca "Och, jaki piękny poranek."
+
diff --git a/files/pl/web/javascript/reference/global_objects/string/fontcolor/index.html b/files/pl/web/javascript/reference/global_objects/string/fontcolor/index.html new file mode 100644 index 0000000000..0cc7fa1ccc --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/fontcolor/index.html @@ -0,0 +1,50 @@ +--- +title: String.prototype.fontcolor() +slug: Web/JavaScript/Referencje/Obiekty/String/fontcolor +tags: + - Deprecated + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/fontcolor +--- +
{{JSRef}} {{deprecated_header}}
+ +

Podsumowanie

+ +

Powoduje, iż łańcuch zostanie wyświetlony podanym kolorem tak jakby był wewnątrz znacznika {{HTMLElement("font")}}.

+ +

Składnia

+ +
str.fontcolor(color)
+ +

Parametry

+ +
+
color 
+
Łańcuch znaków wyrażający kolor jako trójka heksadecymalna RGB lub jako łańcuch znaków. Lista nazw w postaci łańcucha znaków dla kolorów jest dostępna w przewodniku po języku JavaScript 1.5.
+
+ +

Opis

+ +

Jeśli wyrażamy kolor w postaci trójki heksadecymalnej RGB, to musisz zastosować format rrggbb. Na przykład, wartość heksadecymalna koloru łososiowego składa się z red=FA, green=80 i blue=72, więc trójka RGB dla łososiowego będzie miała wartość "FA8072".

+ +

Przykłady

+ +

Przykład: Zastosowanie fontcolor()

+ +

Następujący przykład stosuje metodę string do zmiany koloru łańcucha znaków:

+ +
var worldString="Witaj, Świecie";
+
+console.log(worldString.fontcolor("red") + " jest koloru czerwonego w tej linii");
+// <font color="red">Witaj, Świecie</font> jest koloru czerwonego w tej linii
+
+console.log(worldString.fontcolor("FF00") +" linia jest czerwona i podany kolor heksadecymalny");
+// <font color="FF00">Witaj, Świecie</font> linia jest czerwona i podany kolor heksadecymalny
+
+ +
 
+ +

 

diff --git a/files/pl/web/javascript/reference/global_objects/string/fontsize/index.html b/files/pl/web/javascript/reference/global_objects/string/fontsize/index.html new file mode 100644 index 0000000000..3de3c5bb4c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/fontsize/index.html @@ -0,0 +1,48 @@ +--- +title: String.prototype.fontsize() +slug: Web/JavaScript/Referencje/Obiekty/String/fontsize +tags: + - Deprecated + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/fontsize +--- +

{{JSRef}}{{ Non-standard_header() }}

+ +

Podsumowanie

+ +

Powoduje wyświetlenie łańcucha znaków w określonym rozmiarze czcionki, tak jak to było w znaczniku {{HTMLElement("font")}}.

+ +

Składnia

+ +
str.fontsize(size)
+ +

Parametry

+ +
+
size 
+
Liczba całkowita pomiędzy 1 a 7, łańcuch znaków reprezentujący rozmiar znaku liczby całkowitej między 1 a 7.
+
+ +

Opis

+ +

Kiedy określisz rozmiar jako liczbę całkowitą, ustaw rozmiar stringName na jeden z 7 innych rozmiarów. Kiedy określisz size łańcucha znaków jako "-2", to dostosujesz rozmiar czcionki stringName relatywnie do rozmiaru jaki został ustawiony w znaczniku {{HTMLElement("basefont")}}.

+ +

Przykłady

+ +

Przykład: Zastosowanie fontsize()

+ +
var worldString = "Witaj, Świecie";
+
+console.log(worldString.small());     // <small>Witaj, Świecie</small>
+console.log(worldString.big());       // <big>Witaj, Świecie</big>
+console.log(worldString.fontsize(7)); // <fontsize=7>Witaj, Świecie</fontsize>
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/fromcharcode/index.html b/files/pl/web/javascript/reference/global_objects/string/fromcharcode/index.html new file mode 100644 index 0000000000..7d00613db2 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/fromcharcode/index.html @@ -0,0 +1,50 @@ +--- +title: String.fromCharCode() +slug: Web/JavaScript/Referencje/Obiekty/String/fromCharCode +tags: + - JavaScript + - Method + - String + - Unicode +translation_of: Web/JavaScript/Reference/Global_Objects/String/fromCharCode +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków stworzony przez podaną sekwencję kodów Unicode.

+ +

Składnia

+ +
String.fromCharCode(num1[, ...[, numN]])
+ +

Parametry

+ +
+
num1, ..., numN  
+
Sekwencja liczb, które są wartościami Unicode.
+
+ +

Opis

+ +

Ta metoda zwraca łańcuch znaków nie będący {{jsxref("String")}}.

+ +

Ponieważ fromCharCode() jest metodą statyczną {{jsxref("String")}}, używaj ją zawsze jako String.fromCharCode(), a nie jako metodę obiektu {{jsxref("String")}}.

+ +

Przykłady

+ +

Przykład: Zastosowanie fromCharCode()

+ +

Następujący przykład zwraca łańcuch znaków "ABC".

+ +
String.fromCharCode(65,66,67); // "ABC"
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/fromcodepoint/index.html b/files/pl/web/javascript/reference/global_objects/string/fromcodepoint/index.html new file mode 100644 index 0000000000..a8c17af7f1 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/fromcodepoint/index.html @@ -0,0 +1,149 @@ +--- +title: String.fromCodePoint() +slug: Web/JavaScript/Referencje/Obiekty/String/fromCodePoint +translation_of: Web/JavaScript/Reference/Global_Objects/String/fromCodePoint +--- +
{{JSRef}}
+ +

The static String.fromCodePoint() method returns a string created by using the specified sequence of code points.

+ +
{{EmbedInteractiveExample("pages/js/string-fromcodepoint.html","shorter")}}
+ + + +

Syntax

+ +
String.fromCodePoint(num1[, ...[, numN]])
+ +

Parameters

+ +
+
num1, ..., numN
+
A sequence of code points.
+
+ +

Return value

+ +

A string created by using the specified sequence of code points.

+ +

Exceptions

+ + + +

Description

+ +

This method returns a string (and not a {{jsxref("String")}} object).

+ +

Because fromCodePoint() is a static method of {{jsxref("String")}}, you must call it as String.fromCodePoint(), rather than as a method of a {{jsxref("String")}} object you created.

+ +

Polyfill

+ +

The String.fromCodePoint() method has been added to ECMAScript 2015 and may not be supported in all web browsers or environments yet.

+ +

Use the code below for a polyfill:

+ +
if (!String.fromCodePoint) (function(stringFromCharCode) {
+    var fromCodePoint = function(_) {
+      var codeUnits = [], codeLen = 0, result = "";
+      for (var index=0, len = arguments.length; index !== len; ++index) {
+        var codePoint = +arguments[index];
+        // correctly handles all cases including `NaN`, `-Infinity`, `+Infinity`
+        // The surrounding `!(...)` is required to correctly handle `NaN` cases
+        // The (codePoint>>>0) === codePoint clause handles decimals and negatives
+        if (!(codePoint < 0x10FFFF && (codePoint>>>0) === codePoint))
+          throw RangeError("Invalid code point: " + codePoint);
+        if (codePoint <= 0xFFFF) { // BMP code point
+          codeLen = codeUnits.push(codePoint);
+        } else { // Astral code point; split in surrogate halves
+          // https://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
+          codePoint -= 0x10000;
+          codeLen = codeUnits.push(
+            (codePoint >> 10) + 0xD800,  // highSurrogate
+            (codePoint % 0x400) + 0xDC00 // lowSurrogate
+          );
+        }
+        if (codeLen >= 0x3fff) {
+          result += stringFromCharCode.apply(null, codeUnits);
+          codeUnits.length = 0;
+        }
+      }
+      return result + stringFromCharCode.apply(null, codeUnits);
+    };
+    try { // IE 8 only supports `Object.defineProperty` on DOM elements
+      Object.defineProperty(String, "fromCodePoint", {
+        "value": fromCodePoint, "configurable": true, "writable": true
+      });
+    } catch(e) {
+      String.fromCodePoint = fromCodePoint;
+    }
+}(String.fromCharCode));
+
+ +

Examples

+ +

Using fromCodePoint()

+ +

Valid input:

+ +
String.fromCodePoint(42);       // "*"
+String.fromCodePoint(65, 90);   // "AZ"
+String.fromCodePoint(0x404);    // "\u0404" == "Є"
+String.fromCodePoint(0x2F804);  // "\uD87E\uDC04"
+String.fromCodePoint(194564);   // "\uD87E\uDC04"
+String.fromCodePoint(0x1D306, 0x61, 0x1D307); // "\uD834\uDF06a\uD834\uDF07"
+
+ +

Invalid input:

+ +
String.fromCodePoint('_');      // RangeError
+String.fromCodePoint(Infinity); // RangeError
+String.fromCodePoint(-1);       // RangeError
+String.fromCodePoint(3.14);     // RangeError
+String.fromCodePoint(3e-2);     // RangeError
+String.fromCodePoint(NaN);      // RangeError
+
+ +

Compared to fromCharCode()

+ +

{{jsxref("String.fromCharCode()")}} cannot return supplementary characters (i.e. code points 0x0100000x10FFFF) by specifying their code point. Instead, it requires the UTF-16 surrogate pair in order to return a supplementary character:

+ +
String.fromCharCode(0xD83C, 0xDF03); // Code Point U+1F303 "Night with
+String.fromCharCode(55356, 57091);   // Stars" == "\uD83C\uDF03"
+
+ +

String.fromCodePoint(), on the other hand, can return 4-byte supplementary characters, as well as the more common 2-byte BMP characters, by specifying their code point (which is equivalent to the UTF-32 code unit):

+ +
String.fromCodePoint(0x1F303); // or 127747 in decimal
+
+ +

Specifications

+ + + + + + + + + + + + +
Specification
{{SpecName('ESDraft', '#sec-string.fromcodepoint', 'String.fromCodePoint')}}
+ +

Browser compatibility

+ + + +

{{Compat("javascript.builtins.String.fromCodePoint")}}

+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/index.html b/files/pl/web/javascript/reference/global_objects/string/index.html new file mode 100644 index 0000000000..ff27fbc81a --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/index.html @@ -0,0 +1,194 @@ +--- +title: String +slug: Web/JavaScript/Referencje/Obiekty/String +tags: + - JavaScript + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Tworzy obiekt pozwalający działać na ciągach znaków.

+ +

Składnia

+ +

Literały znakowe są postaci:

+ +
'string text'
+"string text"
+"中文 español English हिन्दी العربية português বাংলা русский 日本語 ਪੰਜਾਬੀ 한국어 தமிழ்"
+
+ +

Beside regular, printable characters, special characters can be encoded using escape notation:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CodeOutput
\0the NUL character
\'single quote
\"double quote
\\backslash
\nnew line
\rcarriage return
\vvertical tab
\ttab
\bbackspace
\fform feed
\uXXXXunicode codepoint
\xXXthe Latin-1 character
+ +

Or, using the String global object directly:

+ +
String(thing)
+new String(thing)
+
+ +

Parametry

+ +
+
thing
+
Dowolny łańcuch znaków.
+
+ +

Opis

+ +

trings are useful for holding data that can be represented in text form. Some of the most-used operations on strings are to check their {{jsxref("String.length", "length")}}, to build and concatenate them using the + and += string operators, checking for the existence or location of substrings with the {{jsxref("String.prototype.indexOf()", "indexOf()")}} method, or extracting substrings with the {{jsxref("String.prototype.substring()", "substring()")}} method.

+ +

Character access

+ +

There are two ways to access an individual character in a string. The first is the {{jsxref("String.prototype.charAt()", "charAt()")}} method:

+ +
return 'cat'.charAt(1); // returns "a"
+ +
+ +

The other way (introduced in ECMAScript 5) is to treat the string as an array-like object, where individual characters correspond to a numerical index:

+ +
return 'cat'[1]; // returns "a"
+ +
+ +

For character access using bracket notation, attempting to delete or assign a value to these properties will not succeed. The properties involved are neither writable nor configurable. (See {{jsxref("Object.defineProperty()")}} for more information.)

+ +

Comparing strings

+ +

C developers have the strcmp() function for comparing strings. In JavaScript, you just use the less-than and greater-than operators:

+ +
var a = 'a';
+var b = 'b';
+if (a < b) { // true
+  print(a + ' is less than ' + b);
+} else if (a > b) {
+  print(a + ' is greater than ' + b);
+} else {
+  print(a + ' and ' + b + ' are equal.');
+}
+ +

A similar result can be achieved using the {{jsxref("String.prototype.localeCompare()", "localeCompare()")}} method inherited by String instances.

+ +

Distinction between string primitives and String objects

+ +

Note that JavaScript distinguishes between String objects and primitive string values. (The same is true of {{jsxref("Global_Objects/Boolean", "Boolean")}} and {{jsxref("Global_Objects/Number", "Numbers")}}.)

+ +

String literals (denoted by double or single quotes) and strings returned from String calls in a non-constructor context (i.e., without using the {{jsxref("Operators/new", "new")}} keyword) are primitive strings. JavaScript automatically converts primitives to String objects, so that it's possible to use String object methods for primitive strings. In contexts where a method is to be invoked on a primitive string or a property lookup occurs, JavaScript will automatically wrap the string primitive and call the method or perform the property lookup.

+ +
var s_prim = 'foo';
+var s_obj = new String(s_prim);
+
+console.log(typeof s_prim); // Logs "string"
+console.log(typeof s_obj);  // Logs "object"
+ +
+ +

String primitives and String objects also give different results when using {{jsxref("Global_Objects/eval", "eval()")}}. Primitives passed to eval are treated as source code; String objects are treated as all other objects are, by returning the object. For example:

+ +
var s1 = '2 + 2';             // creates a string primitive
+var s2 = new String('2 + 2'); // creates a String object
+console.log(eval(s1));        // returns the number 4
+console.log(eval(s2));        // returns the string "2 + 2"
+ +

For these reasons, code may break when it encounters String objects when it expects a primitive string instead, although generally authors need not worry about the distinction.

+ +

A String object can always be converted to its primitive counterpart with the {{jsxref("String.prototype.valueOf()", "valueOf()")}} method.

+ +
console.log(eval(s2.valueOf())); // returns the number 4
+ +
Note: For another possible approach to strings in JavaScript, please read the article about StringView — a C-like representation of strings based on typed arrays.
+ +

Własności

+ +
+
{{jsxref("String.prototype")}}
+
Pozwala na dodawanie własności do obiektu String.
+
+ +
{{jsOverrides("Function", "Properties", "prototype")}}
+ +

Metody

+ +
+
{{jsxref("String.fromCharCode()")}}
+
Zwraca łańcuch znaków stworzony przez podaną sekwencję kodów Unicode.
+
{{jsxref("String.fromCodePoint()")}} {{experimental_inline}}
+
Returns a string created by using the specified sequence of code points.
+
{{jsxref("String.raw()")}} {{experimental_inline}}
+
Returns a string created from a raw template string.
+
+ +
{{jsOverrides("Function", "Methods", "fromCharCode", "fromCodePoint", "raw")}}
+ +

Przykłady

+ +

Example: String conversion

+ +

It's possible to use String as a "safer" {{jsxref("String.prototype.toString()", "toString()")}} alternative, as although it still normally calls the underlying toString(), it also works for {{jsxref("null")}} and {{jsxref("undefined")}}. For example:

+ +
var outputStrings = [];
+for (var i = 0, n = inputValues.length; i < n; ++i) {
+  outputStrings.push(String(inputValues[i]));
+}
diff --git a/files/pl/web/javascript/reference/global_objects/string/italics/index.html b/files/pl/web/javascript/reference/global_objects/string/italics/index.html new file mode 100644 index 0000000000..016a400805 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/italics/index.html @@ -0,0 +1,45 @@ +--- +title: String.prototype.italics() +slug: Web/JavaScript/Referencje/Obiekty/String/italics +tags: + - Deprecated + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/italics +--- +

{{JSRef}}{{deprecated_header}}

+ +

Podsumowanie

+ +

Powoduje, iż łańcuch zostanie wyświetlony kursywą tak jakby był wewnątrz znacznika {{HTMLElement("i")}}.

+ +

Składnia

+ +
str.italics()
+ +

Opis

+ +

The italics() method embeds a string in an <i> tag: "<i>str</i>".

+ +

Przykłady

+ +

Przykład: Zastosowanie metody italics()

+ +

Następujący przykład stosuje metodę string do zmiany formatowania łańcucha znakowego:

+ +
var worldString="Witaj, Świecie";
+
+console.log(worldString.blink());   // <blink>Witaj, Świecie</blink>
+console.log(worldString.bold());    // <bold>Witaj, Świecie</bold>
+console.log(worldString.italics()); // <i>Witaj, Świecie</i>
+console.log(worldString.strike());  // <s>Witaj, Świecie</s>
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/link/index.html b/files/pl/web/javascript/reference/global_objects/string/link/index.html new file mode 100644 index 0000000000..6d8baeb078 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/link/index.html @@ -0,0 +1,43 @@ +--- +title: String.prototype.link() +slug: Web/JavaScript/Referencje/Obiekty/String/link +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/link +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Tworzy łącze hipertekstowe, które wywołuje inny URL.

+ +

Składnia

+ +
str.link(url)
+ +

Parametry

+ +
+
url
+
Jakikolwiek łańcuch określony w href ze znacznika a; powinien być umieszczany poprawny URL (relatywny lub absolutny).
+
+ +

Opis

+ +

Linki tworzymy poprzez metodę link stającą się elementami tablicy links z obiektu document. Zobacz document.links.

+ +

Przykłady

+ + + +

Następujący przykład wyświetla słowo "MDN" jako odnośnik hipertekstowy, poprzez który użytkownik będzie mógł przejść na stronę domową Netscape:

+ +
var hotText="MDN";
+var URL="https://developer.mozilla.org/";
+
+console.log("Kliknij, aby powrócić do " + hotText.link(URL));
+// Kliknij, aby powrócić do <a href="https://developer.mozilla.org">MDN</a>
+
diff --git a/files/pl/web/javascript/reference/global_objects/string/repeat/index.html b/files/pl/web/javascript/reference/global_objects/string/repeat/index.html new file mode 100644 index 0000000000..76bf932753 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/repeat/index.html @@ -0,0 +1,166 @@ +--- +title: String.prototype.repeat() +slug: Web/JavaScript/Referencje/Obiekty/String/repeat +translation_of: Web/JavaScript/Reference/Global_Objects/String/repeat +--- +
{{JSRef}}
+ +

The repeat() method constructs and returns a new string which contains the specified number of copies of the string on which it was called, concatenated together.

+ +

Składnia

+ +
str.repeat(count)
+ +

Parametry

+ +
+
count
+
An integer between 0 and +∞: [0, +∞), indicating the number of times to repeat the string in the newly-created string that is to be returned.
+
+ +

Zwracana wartość

+ +

A new string containing the specified number of copies of the given string.

+ +

Exceptions

+ + + +

Przykłady

+ +
'abc'.repeat(-1);   // RangeError
+'abc'.repeat(0);    // ''
+'abc'.repeat(1);    // 'abc'
+'abc'.repeat(2);    // 'abcabc'
+'abc'.repeat(3.5);  // 'abcabcabc' (count will be converted to integer)
+'abc'.repeat(1/0);  // RangeError
+
+({ toString: () => 'abc', repeat: String.prototype.repeat }).repeat(2);
+// 'abcabc' (repeat() is a generic method)
+
+ +

Polyfill

+ +

This method has been added to the ECMAScript 6 specification and may not be available in all JavaScript implementations yet. However, you can polyfill String.prototype.repeat() with the following snippet:

+ +
if (!String.prototype.repeat) {
+  String.prototype.repeat = function(count) {
+    'use strict';
+    if (this == null) {
+      throw new TypeError('can\'t convert ' + this + ' to object');
+    }
+    var str = '' + this;
+    count = +count;
+    if (count != count) {
+      count = 0;
+    }
+    if (count < 0) {
+      throw new RangeError('repeat count must be non-negative');
+    }
+    if (count == Infinity) {
+      throw new RangeError('repeat count must be less than infinity');
+    }
+    count = Math.floor(count);
+    if (str.length == 0 || count == 0) {
+      return '';
+    }
+    // Ensuring count is a 31-bit integer allows us to heavily optimize the
+    // main part. But anyway, most current (August 2014) browsers can't handle
+    // strings 1 << 28 chars or longer, so:
+    if (str.length * count >= 1 << 28) {
+      throw new RangeError('repeat count must not overflow maximum string size');
+    }
+    var rpt = '';
+    for (;;) {
+      if ((count & 1) == 1) {
+        rpt += str;
+      }
+      count >>>= 1;
+      if (count == 0) {
+        break;
+      }
+      str += str;
+    }
+    // Could we try:
+    // return Array(count + 1).join(this);
+    return rpt;
+  }
+}
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('ES6', '#sec-string.prototype.repeat', 'String.prototype.repeat')}}{{Spec2('ES6')}}Initial definition.
{{SpecName('ESDraft', '#sec-string.prototype.repeat', 'String.prototype.repeat')}}{{Spec2('ESDraft')}} 
+ +

Browser compatibility

+ +
{{CompatibilityTable}}
+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatChrome("41")}} {{CompatGeckoDesktop("24")}}{{CompatNo}}{{CompatNo}}{{CompatSafari("9")}}
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatNo}}{{CompatChrome("36")}}{{CompatGeckoMobile("24")}}{{CompatNo}}{{CompatNo}}{{CompatNo}}
+
diff --git a/files/pl/web/javascript/reference/global_objects/string/search/index.html b/files/pl/web/javascript/reference/global_objects/string/search/index.html new file mode 100644 index 0000000000..29b9d8e8fb --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/search/index.html @@ -0,0 +1,49 @@ +--- +title: String.prototype.search() +slug: Web/JavaScript/Referencje/Obiekty/String/search +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/search +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Wykonuje przeszukanie dla dopasowanych wyrażeń regularnych i tego obiektu {{jsxref("String")}}.

+ +

Składnia

+ +
str.search(regexp)
+ +

Parametry

+ +
+
regexp 
+
Nazwa wyrażenia regularnego. Może być to nazwa zmiennej lub literał.
+
+ +

Opis

+ +

Jeśli sukces, rezultat przeszukania indeksu wyrażenia regularnego wewnątrz łańcucha znaków. Inaczej zwróci -1.

+ +

Kiedy chcesz wiedzieć gdzie jest znaleziony wzorzec w łańcuchu znaków zastosuj search() (podobne do wyrażenia regularnego metody {{jsxref("RegExp.prototype.test()", "test()")}}); aby uzyskać więcej informacji (lecz wolniej wykonywanie) zastosuj {{jsxref("String.prototype.match()", "match()")}} (podobne do wyrażenia regularnego metody {{jsxref("RegExp.prototype.exec()", "exec()")}} method).

+ +

Przykłady

+ + + +

Następujący przykład drukuje wiadomość, która zależy od sukcesu testu.

+ +
function testinput(re, str){
+   var midstring;
+   if (str.search(re) != -1) {
+      midstring = " contains ";
+   } else {
+      midstring = " does not contain ";
+   }
+   console.log (str + midstring + re.source);
+}
+
diff --git a/files/pl/web/javascript/reference/global_objects/string/slice/index.html b/files/pl/web/javascript/reference/global_objects/string/slice/index.html new file mode 100644 index 0000000000..4fca8a78ca --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/slice/index.html @@ -0,0 +1,51 @@ +--- +title: String.prototype.slice() +slug: Web/JavaScript/Referencje/Obiekty/String/slice +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/slice +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Wydobywa część łańcucha znaków i zwraca go jako nowy łańcuch znaków.

+ +

Składnia

+ +
str.slice(beginSlice[, endSlice])
+ +

Parametry

+ +
+
beginSlice 
+
Oparty na zerze początek indeksu rozpoczynający wyciąganie.
+
+ +
+
endSlice 
+
Oparty na zerze początek indeksu, który kończy wyciąganie. Jeśli pominięty slice() wydobywa do końca łańcuch znaków.
+
+ +

Opis

+ +

slice() wyciąga tekst z jednego łańcucha znaków i zwraca nowy łańcuch znaków. Zmiany w treści jednego łańcucha znaków nie mają wpływu na drugi.

+ +

slice() wyciąga tekst do endSlice lecz go nie włącza. string.slice(1,4) wyciąga drugi znak aż do czwartego (znaki o indeksach 1, 2 i 3).

+ +

Jako ujemny indeks endSlice sygnalizuje przesunięcie z końca łańcucha znaków. str.slice(2,-1) wyciąga trzeci przez ostatni znak w łańcuchu znaków.

+ +

Przykłady

+ +

Przykład: Zastosowanie slice()

+ +

Poniższy przykład używa slice do stworzenia nowego łańcucha znaków.

+ +
var str1 = 'The morning is upon us.';
+var str2 = str1.slice(4,-2);
+
+console.log(str2); // OUTPUT: morning is upon u
+
diff --git a/files/pl/web/javascript/reference/global_objects/string/small/index.html b/files/pl/web/javascript/reference/global_objects/string/small/index.html new file mode 100644 index 0000000000..be9d33a5bb --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/small/index.html @@ -0,0 +1,37 @@ +--- +title: String.prototype.small() +slug: Web/JavaScript/Referencje/Obiekty/String/small +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/String/small +--- +
{{JSRef}} {{deprecated_header}}
+ +

Podsumowanie

+ +

Powoduje to, że łańcuch znaków będzie wyświetlany małą czcionką, jakby znajdował się wewnątrz znacznika {{HTMLElement("small")}}.

+ +

Składnia

+ +
str.small()
+ +

Opis

+ +

The small() method embeds a string in a <small> tag: "<small>str</small>".

+ +

Przykłady

+ +

Przykład: Zastosowanie metody small()

+ +
var worldString = "Witaj, Świecie";
+
+console.log(worldString.small());     // <small>Witaj, Świecie</small>
+console.log(worldString.big());       // <big>Witaj, Świecie</big>
+console.log(worldString.fontsize(7)); // <fontsize=7>Witaj, Świecie</fontsize>
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/strike/index.html b/files/pl/web/javascript/reference/global_objects/string/strike/index.html new file mode 100644 index 0000000000..cef74018f1 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/strike/index.html @@ -0,0 +1,44 @@ +--- +title: String.prototype.strike() +slug: Web/JavaScript/Referencje/Obiekty/String/strike +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/strike +--- +

{{JSRef}}{{deprecated_header}}

+ +

Podsumowanie

+ +

Powoduje, iż łańcuch zostanie wyświetlony przekreślony, tak jakby był wewnątrz znacznika {{HTMLElement("strike")}}.

+ +

Składnia

+ +
str.strike()
+ +

Opis

+ +

The strike() method embeds a string in a <strike> tag: "<strike>str</strike>".

+ +

Przykłady

+ +

Przykład: Zastosowanie metody strike()

+ +

Następujący przykład stosuje metodę string do zmiany formatowania łańcucha znakowego:

+ +
var worldString="Witaj, Świecie";
+
+console.log(worldString.blink());   // <blink>Witaj, Świecie</blink>
+console.log(worldString.bold());    // <bold>Witaj, Świecie</bold>
+console.log(worldString.italics()); // <i>Witaj, Świecie</i>
+console.log(worldString.strike());  // <s>Witaj, Świecie</s>
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/sub/index.html b/files/pl/web/javascript/reference/global_objects/string/sub/index.html new file mode 100644 index 0000000000..4c36c53a39 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/sub/index.html @@ -0,0 +1,44 @@ +--- +title: String.prototype.sub() +slug: Web/JavaScript/Referencje/Obiekty/String/sub +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/sub +--- +

{{JSRef}}{{deprecated_header}}

+ +

Podsumowanie

+ +

Powoduje, iż łańcuch zostanie wyświetlony jako indeks dolny tak jakby był wewnątrz znacznika {{HTMLElement("sub")}}.

+ +

Składnia

+ +
str.sub()
+ +

Opis

+ +

The sub() method embeds a string in a <sub> tag: "<sub>str</sub>".

+ +

Przykłady

+ +

Przykład: Zastosowanie metod sub() i sup()

+ +

Następujący przykład stosuje metody sub() i {{jsxref("String.prototype.sup()", "sup()")}} do formatowania łańcucha znaków:

+ +
var superText="superscript";
+var subText="subscript";
+
+console.log("This is what a " + superText.sup() + " looks like.");
+// This is what a <sup>superscript</sup> looks like
+
+console.log("This is what a " + subText.sub() + " looks like.");
+// This is what a <sub>subscript</sub> looks like.
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/substr/index.html b/files/pl/web/javascript/reference/global_objects/string/substr/index.html new file mode 100644 index 0000000000..61487db384 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/substr/index.html @@ -0,0 +1,66 @@ +--- +title: String.prototype.substr() +slug: Web/JavaScript/Referencje/Obiekty/String/substr +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/substr +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca określoną liczbę początkowych znaków w łańcuchu znaków w określonej lokalizacji.

+ +

Składnia

+ +
str.substr(start[, length])
+ +

Parametry

+ +
+
start 
+
Lokalizacja, w której rozpoczyna się wyciąganie znaków (wartość liczbowa pomiędzy 0, a jeden znak mniej niż długość łańcucha znaków).
+
+ +
+
length 
+
Liczba znaków do wyciągnięcia.
+
+ +

Opis

+ +

start jest indeksem znaków. Pierwszym znakiem w indeksie jest 0 i ostatnim znakiem w indeksie jest liczba o 1 mniejsza niż długość łańcucha znaków. substr() rozpoczyna wyciąganie znaków w start i ściąga liczbę length znaków.

+ +

Jeśli start jest dodatnie i jest długością łańcucha znaków lub dłuższą wartością, substr() nie zwraca znaków.

+ +

Jeśli start jest ujemne, substr() stosuje to jako indeks znaków z końca łańcucha znaków. Jeśli start jest ujemne i abs(start) jest większe niż długość łańcucha znaków to substr() stosuje 0 jako początek indeksu.

+ +

Jeśli length jest 0 lub ujemne, substr() nie zwróci znaków. Jeśli length jest opuszczone, substr() wyciągnie znaki aż do końca łańcucha znaków.

+ +

Przykłady

+ +

Przykład: Zastosowanie substr()

+ +

Rozpatrz poniższy skrypt:

+ +
var str = 'abcdefghij';
+
+console.log('(1, 2): ' + str.substr(1, 2)); // '(1, 2): bc'
+console.log('(-3, 2): ' + str.substr(-3, 2)); // '(-3, 2): hi'
+console.log('(-3): ' + str.substr(-3)); // '(-3): hij'
+console.log('(1): ' + str.substr(1)); // '(1): bcdefghij'
+console.log('(-20, 2): ' + str.substr(-20, 2)); // '(-20, 2): ab'
+console.log('(20, 2): ' + str.substr(20, 2)); // '(20, 2): '
+
+ +

Zobacz także

+ +

 

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/substring/index.html b/files/pl/web/javascript/reference/global_objects/string/substring/index.html new file mode 100644 index 0000000000..5a446e0225 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/substring/index.html @@ -0,0 +1,90 @@ +--- +title: String.prototype.substring() +slug: Web/JavaScript/Referencje/Obiekty/String/substring +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/substring +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca podciąg obiektu String.

+ +

Składnia

+ +
str.substring(indexA[, indexB])
+ +

Parametry

+ +
+
indexA 
+
Liczba całkowita pomiędzy 0, a liczbą o jeden mniejszą niż długość łańcucha znaków.
+
indexB 
+
Opcjonalny. Liczba całkowita pomiędzy 0 i długością łańcucha znaków.
+
+ +

Opis

+ +

substring urywa znaki z indexA lecz nie włącza ich do indexB. W szczególności:

+ + + +

Jeśli indexA jest większy niż indexB, JavaScript zwróci substring(indexB, indexA).

+ +

Przykłady

+ +

Przykład: Zastosowanie substring()

+ +

Następujący przykład substring stosujemy do wyświetlenia znaków ze słowa "Mozilla":

+ +
var anyString = "Mozilla";
+
+// Wyświetli  "Moz"
+console.log(anyString.substring(0,3));
+console.log(anyString.substring(3,0));
+
+// Wyświetli  "lla"
+console.log(anyString.substring(4));
+console.log(anyString.substring(4,7));
+console.log(anyString.substring(7,4));
+
+// Wyświetli  "Mozill"
+console.log(anyString.substring(0,6));
+
+// Wyświetli "Mozilla"
+console.log(anyString.substring(0,7));
+console.log(anyString.substring(0,10));
+
+ +

Przykład: Zamiana podciągu wewnątrz ciągu

+ +

Następujący przykład zamienia podciąg wewnątrz ciągu. Zostaną zamienione oba poszczególne znaki i podciągi. Funkcja zostanie wywołana na koniec przykładu zmieniając łańcuch znaków; "Brave New World" na "Brave New Web".

+ +
function replaceString(oldS, newS, fullS) {
+// Replaces oldS with newS in the string fullS
+   for (var i = 0; i < fullS.length; i++) {
+      if (fullS.substring(i, i + oldS.length) == oldS) {
+         fullS = fullS.substring(0, i) + newS + fullS.substring(i + oldS.length, fullS.length);
+      }
+   }
+   return fullS;
+}
+
+replaceString("World", "Web", "Brave New World");
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/sup/index.html b/files/pl/web/javascript/reference/global_objects/string/sup/index.html new file mode 100644 index 0000000000..dbf33ea3ed --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/sup/index.html @@ -0,0 +1,45 @@ +--- +title: String.prototype.sup() +slug: Web/JavaScript/Referencje/Obiekty/String/sup +tags: + - Deprecated + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/sup +--- +

{{JSRef}}{{deprecated_header}}

+ +

Podsumowanie

+ +

Powoduje, iż łańcuch zostanie wyświetlony jako indeks górny tak jakby był wewnątrz znacznika {{HTMLElement("sup")}}.

+ +

Składnia

+ +
str.sup()
+ +

Opis

+ +

The sup() method embeds a string in a <sup> tag: "<sup>str</sup>".

+ +

Przykłady

+ +

Przykład: Zastosowanie metody sub() i sup()

+ +

Następujący przykład stosuje metodę {{jsxref("String.prototype.sub()", "sub()")}} i sup() do zmiany formatu łańcucha znaków:

+ +
var superText="superscript";
+var subText="subscript";
+
+console.log("This is what a " + superText.sup() + " looks like.");
+// This is what a <sup>superscript</sup> looks like
+
+console.log("This is what a " + subText.sub() + " looks like.");
+// This is what a <sub>subscript</sub> looks like.
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/tolowercase/index.html b/files/pl/web/javascript/reference/global_objects/string/tolowercase/index.html new file mode 100644 index 0000000000..0b871b9ca6 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/tolowercase/index.html @@ -0,0 +1,40 @@ +--- +title: String.prototype.toLowerCase() +slug: Web/JavaScript/Referencje/Obiekty/String/toLowerCase +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/toLowerCase +--- +

{{jsref}}

+ +

Podsumowanie

+ +

Zwraca wartość wywołującego łańcucha znaków, skonwertowaną na małe litery.

+ +

Składnia

+ +
str.toLowerCase()
+ +

Opis

+ +

Metoda toLowerCase() zwraca wartość łańcucha znaków skonwertowanego na małe litery. toLowerCase() nie wpływa na wartość samego łańcucha.

+ +

Przykłady

+ +

Przykład: Zastosowanie toLowerCase

+ +

Następujący przykład wyświetli łańcuch "alfabet" złożony z małych liter:

+ +
console.log('ALFABET'.toLowerCase()); // 'alfabet'
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/tosource/index.html b/files/pl/web/javascript/reference/global_objects/string/tosource/index.html new file mode 100644 index 0000000000..cb372d673c --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/tosource/index.html @@ -0,0 +1,41 @@ +--- +title: String.prototype.toSource() +slug: Web/JavaScript/Referencje/Obiekty/String/toSource +tags: + - JavaScript + - Method + - Non-standard + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/toSource +--- +

{{JSRef}}{{non-standard_header}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący kod źródłowy obiektu.

+ +

Składnia

+ +
String.toSource()
+str.toSource()
+
+ +

Opis

+ +

Metoda toSource() zwraca następujące wartości:

+ + + +

Ta metoda jest w JavaScript wywoływana zazwyczaj wewnętrznie, nie bezpośrednio w kodzie.

+ +
 
diff --git a/files/pl/web/javascript/reference/global_objects/string/tostring/index.html b/files/pl/web/javascript/reference/global_objects/string/tostring/index.html new file mode 100644 index 0000000000..16028dff15 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/tostring/index.html @@ -0,0 +1,41 @@ +--- +title: String.protype.toString() +slug: Web/JavaScript/Referencje/Obiekty/String/toString +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/toString +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca łańcuch znaków reprezentujący dany obiekt.

+ +

Składnia

+ +
str.toString()
+ +

Opis

+ +

Obiekt {{jsxref("String")}} przesłania metodę toString obiektu {{jsxref("Object")}}; nie dziedziczy {{jsxref("Object.prototype.toString()")}}. Dla obiektów {{jsxref("String")}}, metoda toString() zwraca łańcuch znaków reprezentujący obiekt.

+ +

Przykłady

+ +

Przykład: Zastosowanie toString()

+ +

Następujący przykład wyświetli wartość łańcuch znaków obiektu {{jsxref("String")}}:

+ +
var x = new String("Witaj świecie");
+
+console.log(x.toString())      // Wyświetla "Witaj świecie"
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/touppercase/index.html b/files/pl/web/javascript/reference/global_objects/string/touppercase/index.html new file mode 100644 index 0000000000..4b792076fe --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/touppercase/index.html @@ -0,0 +1,38 @@ +--- +title: String.prototype.toUpperCase() +slug: Web/JavaScript/Referencje/Obiekty/String/toUpperCase +tags: + - JavaScript + - Method + - Prototype + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/toUpperCase +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca wartość wywołującego łańcucha znaków, skonwertowaną na duże litery.

+ +

Składnia

+ +
str.toUpperCase()
+ +

Opis

+ +

Metoda toUpperCase() zwraca wartość łańcucha znaków skonwertowanego na duże litery. toUpperCase() nie wpływa na wartość samego łańcucha.

+ +

Przykłady

+ +

Przykład: Zastosowanie toUpperCase()

+ +
console.log('alfabet'.toUpperCase()); // 'ALFABET'
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/string/valueof/index.html b/files/pl/web/javascript/reference/global_objects/string/valueof/index.html new file mode 100644 index 0000000000..1eda0e3021 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/string/valueof/index.html @@ -0,0 +1,40 @@ +--- +title: String.prototype.valueOf() +slug: Web/JavaScript/Referencje/Obiekty/String/valueOf +tags: + - JavaScript + - Method + - Property + - String +translation_of: Web/JavaScript/Reference/Global_Objects/String/valueOf +--- +

{{JSRef}}

+ +

Podsumowanie

+ +

Zwraca pierwotną wartość obiektu {{jsxref("String")}}.

+ +

Składnia

+ +
str.valueOf()
+ +

Opis

+ +

Metoda valueOf() obiektu {{jsxref("String")}} zwraca pierwotną wartość obiektu {{jsxref("String")}} jako łańcuch znaków. Ta wartość jest równoważna do {{jsxref("String.prototype.toString()")}}.

+ +

Ta metoda jest w JavaScript wywoływana zazwyczaj wewnętrznie, nie bezpośrednio w kodzie.

+ +

Przykłady

+ +

Przykład: Zastosowanie valueOf()

+ +
var x = new String("Witaj świecie");
+console.log(x.valueOf()); // Wyświetla "Witaj świecie"
+
+ +

Zobacz także

+ + diff --git a/files/pl/web/javascript/reference/global_objects/symbol/index.html b/files/pl/web/javascript/reference/global_objects/symbol/index.html new file mode 100644 index 0000000000..4124cb2a46 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/symbol/index.html @@ -0,0 +1,227 @@ +--- +title: Symbol +slug: Web/JavaScript/Referencje/Obiekty/Symbol +translation_of: Web/JavaScript/Reference/Global_Objects/Symbol +--- +
{{JSRef}}
+ +

Funkcja Symbol() zwraca wartość typu symbol, posiada statyczne własności wystawiające kilka wartości używanych we wbudowanych obiektach, posiada statyczne metody wystawiające globalny rejestr symboli i przypomina wbudowaną klasę obiektu, jest jednak niekompletna jako konstruktor ponieważ nie wspiera składni "new Symbol()".  

+ +

Każdy symbol zwrócony przez Symbol() jest unikalny. Symbol powinien być użyty jako identyfikator własności obiektu, został zaprojektowany jedynie w tym celu. Pełniejsze wyjaśnienie dotyczące jego przeznaczenia i użycia można znaleźć w poświęconym mu wpisie w glosariuszu.

+ +

Typ symbol jest {{Glossary("Primitive", "typem prostym")}}.

+ +
{{EmbedInteractiveExample("pages/js/symbol-constructor.html")}}
+ + + +

Składnia

+ +
Symbol([opis])
+ +

Parametry

+ +
+
opis {{optional_inline}}
+
Ciąg znaków, parametr opcjonalny. Opis symbolu, może być użyty do debugowania, ale nie do dostania się do samego symbolu.
+
+ +

Opis

+ +

Aby stworzyć nowy symbol należy użyć funkcji Symbol(), opcjonalnie przekazując jej opisowy ciąg znaków:

+ +
var sym1 = Symbol();
+var sym2 = Symbol('foo');
+var sym3 = Symbol('foo');
+
+ +

Powyższy kod tworzy trzy nowe symbole. Należy zwrócić uwagę, że Symbol("foo") nie konwertuje ciągu znaków "foo" na symbol, tylko tworzy za każdym razem nowy symbol:

+ +
Symbol('foo') === Symbol('foo'); // false
+ +

Następująca składnia z operatorem {{jsxref("Operators/new", "new")}} spowoduje wyjątek {{jsxref("TypeError")}}:

+ +
var sym = new Symbol(); // TypeError
+ +

Dzieje się tak dlatego żeby powstrzymać programistów przed opakowywaniem wartości symboli w obiekty i może być zaskakujące, gdyż tworzenie opakowanych wartości dla typów prostych jest zazwyczaj możliwe (na przykład new Boolean, new String i new Number).

+ +

Jeśli stworzenie opakowanego symbolu jest dokładnie tym czego chce programista, może do tego użyć funkcji Object():

+ +
var sym = Symbol('foo');
+typeof sym;     // "symbol"
+var symObj = Object(sym);
+typeof symObj;  // "object"
+
+ +

Symbole współdzielone w globalnym rejestrze symboli

+ +

Powyższa składnia używająca funkcji Symbol() nie stworzy globalnego symbolu, który będzie dostępny w całym kodzie. Aby stworzyć symbol dostępny między plikami, a nawet między sferami (z których każda ma swoją globalną przestrzeń) należy użyć metody {{jsxref("Symbol.for()")}}. Z kolei metody {{jsxref("Symbol.keyFor()")}} można użyć aby uzyskać nazwę globalnego klucza dla posiadanego symbolu.

+ +

Znajdowanie własności indeksowanych symbolami na obiekcie

+ +

Metoda {{jsxref("Object.getOwnPropertySymbols()")}} zwraca tablicę symboli i pozwala znaleźć własności indeksowane symbolami na danym obiekcie. Każdy obiekt jest inicjowany bez takich własności, więc metoda ta zwróci pustą tablicę do czasu ustawienia na obiekcie własności pod kluczem typu symbol.

+ +

Własności

+ +
+
Symbol.length
+
Własność length której wartością jest 0.
+
{{jsxref("Symbol.prototype")}}
+
Reprezentuje prototyp konstruktora Symbol.
+
+ +

Znane symbole

+ +

Oprócz symboli zdefiniowanych przez programistę, JavaScript posiada wbudowane symbole reprezentujące wewnętrzne mechanizmy języka, które nie były widoczne dla programisty w wersji ECMAScript 5 i wcześniejszych. Dostęp do tych symboli jest możliwy za pomocą następujących własności statycznych:

+ +

Symbole iteracji

+ +
+
{{jsxref("Symbol.iterator")}}
+
Metoda zwracająca domyślny iterator dla obiektu. Używana przez for...of.
+
{{jsxref("Symbol.asyncIterator")}} {{experimental_inline}}
+
Metoda zwracająca domyślny asynchroniczny iterator dla obiektu. Używana przez for await of.
+
+ +

Symbole wyrażeń regularnych

+ +
+
{{jsxref("Symbol.match")}}
+
Metoda dopasowująca dla ciągu znaków, używana również dla określenia czy obiekt może zostać użyty jako wyrażenie regularne. Używana przez {{jsxref("String.prototype.match()")}}.
+
{{jsxref("Symbol.replace")}}
+
Metoda zastępująca dopasowany ciąg w ciągu znaków. Używana przez {{jsxref("String.prototype.replace()")}}.
+
{{jsxref("Symbol.search")}}
+
Metoda zwracająca indeks początku ciągu znaków który został dopasowany do wyrażenia regularnego. Używana przez {{jsxref("String.prototype.search()")}}.
+
{{jsxref("Symbol.split")}}
+
Metoda dzieląca łańcuch znaków w miejscu w którym został dopasowany do wyrażenia regularnego. Używana przez {{jsxref("String.prototype.split()")}}.
+
+ +

Pozostałe symbole

+ +
+
{{jsxref("Symbol.hasInstance")}}
+
Metoda określająca czy konstruktor rozpoznaje obiekt jako swoją instancję. Używana przez {{jsxref("Operators/instanceof", "instanceof")}}.
+
{{jsxref("Symbol.isConcatSpreadable")}}
+
Wartość logiczna określająca czy obiekt powinien zostać spłaszczony do jego elementów tablicy. Używana przez {{jsxref("Array.prototype.concat()")}}.
+
{{jsxref("Symbol.unscopables")}}
+
Wartość obiektu którego własne i dziediczone nazwy własności są wykluczone ze środowiska with powiązanego obiektu.
+
{{jsxref("Symbol.species")}}
+
Funkcja konstruktora używana do tworzenia obiektów wywodzących się z danego.
+
{{jsxref("Symbol.toPrimitive")}}
+
Metoda konwertująca obiekt na typ prosty.
+
{{jsxref("Symbol.toStringTag")}}
+
Ciąg znaków używany dla domyślnego opisu obiektu. Używany przez {{jsxref("Object.prototype.toString()")}}.
+
+ +

Metody

+ +
+
{{jsxref("Symbol.for()", "Symbol.for(key)")}}
+
Szuka istniejącego symbolu o podanym kluczu i zwraca go, jeśli został znaleziony. W przeciwnym razie w globalnym rejestrze tworzony jest nowy symbol o podanym kluczu i również zwracany.
+
{{jsxref("Symbol.keyFor", "Symbol.keyFor(sym)")}}
+
Zwraca klucz w globalnym rejestrze zapisany dla danego symbolu.
+
+ +

Symbol prototype

+ +

Wszystkie symbole dziecidzą po {{jsxref("Symbol.prototype")}}.

+ +

Własności

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/Symbol/prototype','Properties')}}

+ +

Metody

+ +

{{page('en-US/Web/JavaScript/Reference/Global_Objects/Symbol/prototype','Methods')}}

+ +

Przykłady

+ +

Używanie operatora typeof z symbolami

+ +

Operator {{jsxref("Operators/typeof", "typeof")}} może pomóc w identyfikacji symboli.

+ +
typeof Symbol() === 'symbol'
+typeof Symbol('foo') === 'symbol'
+typeof Symbol.iterator === 'symbol'
+
+ +

Konwersje typu symbol

+ + + +

Symbole i iteracja for...in

+ +

Symbole nie są iterowalne w pętlach for...in. Dodatkowo, {{jsxref("Object.getOwnPropertyNames()")}} nie zwróci własności obiektu zapisanych pod kluczem którym jest symbol, do tego celu można użyć {{jsxref("Object.getOwnPropertySymbols()")}}.

+ +
var obj = {};
+
+obj[Symbol('a')] = 'a';
+obj[Symbol.for('b')] = 'b';
+obj['c'] = 'c';
+obj.d = 'd';
+
+for (var i in obj) {
+   console.log(i); // loguje "c" i "d"
+}
+ +

Symbole i JSON.stringify()

+ +

Własności obiektu znajdujące się pod kluczem w postaci symbolu są ignorowane przez JSON.stringify():

+ +
JSON.stringify({[Symbol('foo')]: 'foo'});
+// '{}'
+ +

Żeby dowiedzieć się więcej zobacz {{jsxref("JSON.stringify()")}}.

+ +

Symbole opakowane w obiekty jako klucze własności

+ +

Gdy symbol opakowany w obiekt jest użyty jako klucz własności, obiekt opakowujący zostanie skonwertowany do symbolu który opakowuje:

+ +
var sym = Symbol('foo');
+var obj = {[sym]: 1};
+obj[sym];            // 1
+obj[Object(sym)];    // nadal 1
+
+ +

Specyfikacje

+ + + + + + + + + + + + + + + + + + + +
SpecyfikacjaStatusKomentarz
{{SpecName('ES2015', '#sec-symbol-objects', 'Symbol')}}{{Spec2('ES2015')}}Wstępna definicja
{{SpecName('ESDraft', '#sec-symbol-objects', 'Symbol')}}{{Spec2('ESDraft')}} 
+ +

Kompatybilność przeglądarek

+ + + +

{{Compat("javascript.builtins.Symbol")}}

+ +

Zobacz również

+ + diff --git a/files/pl/web/javascript/reference/global_objects/syntaxerror/index.html b/files/pl/web/javascript/reference/global_objects/syntaxerror/index.html new file mode 100644 index 0000000000..c8a65cd46b --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/syntaxerror/index.html @@ -0,0 +1,100 @@ +--- +title: SyntaxError +slug: Web/JavaScript/Referencje/Obiekty/SyntaxError +tags: + - Błąd składniowy + - JavaScript + - Klasa + - Obiekt + - Referencja + - SyntaxError +translation_of: Web/JavaScript/Reference/Global_Objects/SyntaxError +--- +
{{JSRef}}
+ +

Obiekt SyntaxError reprezentuje błąd przy próbie interpretacji kodu niepoprawnego pod względem składni. Jest wyrzucany wtedy, gdy silnik JavaScript podczas interpretacji kodu napotyka znak lub ciąg znaków niezgodny ze składnią języka.

+ +

Konstruktor

+ +
+
SyntaxError()
+
Tworzy nowy obiekt SyntaxError.
+
+ +

Właściwości instancji

+ +
+
{{jsxref("Error.prototype.message", "SyntaxError.prototype.message")}}
+
Wiadomość błędu. Chociaż ECMA-262 mówi, że {{jsxref("SyntaxError")}} powinien dostarczać własną właściwość message, w SpiderMonkey jest ona dziedziczona z {{jsxref("Error.prototype.message")}}.
+
{{jsxref("Error.prototype.name", "SyntaxError.prototype.name")}}
+
Nazwa błędu. Odziedziczone z {{jsxref("Error")}}.
+
{{jsxref("Error.prototype.fileName", "SyntaxError.prototype.fileName")}}
+
Ścieżka do pliku zawierającego błąd. Odziedziczone z {{jsxref("Error")}}.
+
{{jsxref("Error.prototype.lineNumber", "SyntaxError.prototype.lineNumber")}}
+
Numer zawierającej błąd linii w pliku. Odziedziczone z {{jsxref("Error")}}.
+
{{jsxref("Error.prototype.columnNumber", "SyntaxError.prototype.columnNumber")}}
+
Numer zawierającej błąd kolumny w linii kodu. Odziedziczone z {{jsxref("Error")}}.
+
{{jsxref("Error.prototype.stack", "SyntaxError.prototype.stack")}}
+
Stos wywołań. Odziedziczone z {{jsxref("Error")}}.
+
+ +

Przykłady

+ +

Obsługa SyntaxError

+ +
try {
+  eval('hoo bar');
+} catch (e) {
+  console.error(e instanceof SyntaxError);
+  console.error(e.message);
+  console.error(e.name);
+  console.error(e.fileName);
+  console.error(e.lineNumber);
+  console.error(e.columnNumber);
+  console.error(e.stack);
+}
+
+ +

Tworzenie SyntaxError

+ +
try {
+  throw new SyntaxError('Hej', 'jakisPlik.js', 10);
+} catch (e) {
+  console.error(e instanceof SyntaxError); // true
+  console.error(e.message);                // Hej
+  console.error(e.name);                   // SyntaxError
+  console.error(e.fileName);               // jakisPlik.js
+  console.error(e.lineNumber);             // 10
+  console.error(e.columnNumber);           // 0
+  console.error(e.stack);                  // @debugger eval code:3:9
+}
+
+ +

Specyfikacje

+ + + + + + + + + + + + +
Specyfikacja
{{SpecName('ESDraft', '#sec-native-error-types-used-in-this-standard-syntaxerror', 'SyntaxError')}}
+ +

Wsparcie przeglądarek

+ +
+ + +

{{Compat("javascript.builtins.SyntaxError")}}

+
+ +

Zobacz też

+ + diff --git a/files/pl/web/javascript/reference/global_objects/uint16array/index.html b/files/pl/web/javascript/reference/global_objects/uint16array/index.html new file mode 100644 index 0000000000..ef744c5848 --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/uint16array/index.html @@ -0,0 +1,224 @@ +--- +title: Uint16Array +slug: Web/JavaScript/Referencje/Obiekty/Uint16Array +translation_of: Web/JavaScript/Reference/Global_Objects/Uint16Array +--- +
{{JSRef("Global_Objects", "TypedArray", "Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array")}}
+ +

Summary

+ +

The Uint16Array typed array represents an array of 16-bit unsigned integers in the platform byte order. If control over byte order is needed, use {{jsxref("DataView")}} instead. The contents are initialized to 0. Once established, you can reference elements in the array using the object's methods, or using standard array index syntax (that is, using bracket notation).

+ +

Syntax

+ +
Uint16Array(length);
+Uint16Array(typedArray);
+Uint16Array(object);
+Uint16Array(buffer [, byteOffset [, length]]);
+ +

For more information about the constructor syntax and the parameters, see TypedArray.

+ +

Properties

+ +
+
{{jsxref("TypedArray.BYTES_PER_ELEMENT", "Uint16Array.BYTES_PER_ELEMENT")}}
+
Returns a number value of the element size. 2 in the case of an Uint16Array.
+
Uint16Array.length
+
Length property whose value is 3.
+
{{jsxref("TypedArray.name", "Uint16Array.name")}}
+
Returns the string value of the constructor name. In the case of the Uint16Array type: "Uint16Array".
+
{{jsxref("TypedArray.prototype", "Uint16Array.prototype")}}
+
Prototype for the TypedArray objects.
+
+ +

Methods

+ +
+
{{jsxref("TypedArray.from", "Uint16Array.from()")}}
+
Creates a new Uint16Array from an array-like or iterable object. See also {{jsxref("Array.from()")}}.
+
{{jsxref("TypedArray.of", "Uint16Array.of()")}}
+
Creates a new Uint16Array with a variable number of arguments. See also {{jsxref("Array.of()")}}.
+
+ +

Uint16Array prototype

+ +

All Uint16Array objects inherit from {{jsxref("TypedArray.prototype", "%TypedArray%.prototype")}}.

+ +

Properties

+ +
+
Uint16Array.prototype.constructor
+
Returns the function that created an instance's prototype. This is the Uint16Array constructor by default.
+
{{jsxref("TypedArray.prototype.buffer", "Uint16Array.prototype.buffer")}} {{readonlyInline}}
+
Returns the {{jsxref("ArrayBuffer")}} referenced by the Uint16Array Fixed at construction time and thus read only.
+
{{jsxref("TypedArray.prototype.byteLength", "Uint16Array.prototype.byteLength")}} {{readonlyInline}}
+
Returns the length (in bytes) of the Uint16Array from the start of its {{jsxref("ArrayBuffer")}}. Fixed at construction time and thus read only.
+
{{jsxref("TypedArray.prototype.byteOffset", "Uint16Array.prototype.byteOffset")}} {{readonlyInline}}
+
Returns the offset (in bytes) of the Uint16Array from the start of its {{jsxref("ArrayBuffer")}}. Fixed at construction time and thus read only.
+
{{jsxref("TypedArray.prototype.length", "Uint16Array.prototype.length")}} {{readonlyInline}}
+
Returns the number of elements hold in the Uint16Array. Fixed at construction time and thus read only.
+
+ +

Methods

+ +
+
{{jsxref("TypedArray.copyWithin", "Uint16Array.prototype.copyWithin()")}}
+
Copies a sequence of array elements within the array. See also {{jsxref("Array.prototype.copyWithin()")}}.
+
{{jsxref("TypedArray.entries", "Uint16Array.prototype.entries()")}}
+
Returns a new Array Iterator object that contains the key/value pairs for each index in the array. See also {{jsxref("Array.prototype.entries()")}}.
+
{{jsxref("TypedArray.every", "Uint16Array.prototype.every()")}}
+
Tests whether all elements in the array pass the test provided by a function. See also {{jsxref("Array.prototype.every()")}}.
+
{{jsxref("TypedArray.fill", "Uint16Array.prototype.fill()")}}
+
Fills all the elements of an array from a start index to an end index with a static value. See also {{jsxref("Array.prototype.fill()")}}.
+
{{jsxref("TypedArray.filter", "Uint16Array.prototype.filter()")}}
+
Creates a new array with all of the elements of this array for which the provided filtering function returns true. See also {{jsxref("Array.prototype.filter()")}}.
+
{{jsxref("TypedArray.find", "Uint16Array.prototype.find()")}}
+
Returns the found value in the array, if an element in the array satisfies the provided testing function or undefined if not found. See also {{jsxref("Array.prototype.find()")}}.
+
{{jsxref("TypedArray.findIndex", "Uint16Array.prototype.findIndex()")}}
+
Returns the found index in the array, if an element in the array satisfies the provided testing function or -1 if not found. See also {{jsxref("Array.prototype.findIndex()")}}.
+
{{jsxref("TypedArray.forEach", "Uint16Array.prototype.forEach()")}}
+
Calls a function for each element in the array. See also {{jsxref("Array.prototype.forEach()")}}.
+
{{jsxref("TypedArray.includes", "Uint16Array.prototype.includes()")}} {{experimental_inline}}
+
Determines whether a typed array includes a certain element, returning true or false as appropriate. See also {{jsxref("Array.prototype.includes()")}}.
+
{{jsxref("TypedArray.indexOf", "Uint16Array.prototype.indexOf()")}}
+
Returns the first (least) index of an element within the array equal to the specified value, or -1 if none is found. See also {{jsxref("Array.prototype.indexOf()")}}.
+
{{jsxref("TypedArray.join", "Uint16Array.prototype.join()")}}
+
Joins all elements of an array into a string. See also {{jsxref("Array.prototype.join()")}}.
+
{{jsxref("TypedArray.keys", "Uint16Array.prototype.keys()")}}
+
Returns a new Array Iterator that contains the keys for each index in the array. See also {{jsxref("Array.prototype.keys()")}}.
+
{{jsxref("TypedArray.lastIndexOf", "Uint16Array.prototype.lastIndexOf()")}}
+
Returns the last (greatest) index of an element within the array equal to the specified value, or -1 if none is found. See also {{jsxref("Array.prototype.lastIndexOf()")}}.
+
{{jsxref("TypedArray.map", "Uint16Array.prototype.map()")}}
+
Creates a new array with the results of calling a provided function on every element in this array. See also {{jsxref("Array.prototype.map()")}}.
+
{{jsxref("TypedArray.move", "Uint16Array.prototype.move()")}} {{non-standard_inline}} {{unimplemented_inline}}
+
Former non-standard version of {{jsxref("TypedArray.copyWithin", "Uint16Array.prototype.copyWithin()")}}.
+
{{jsxref("TypedArray.reduce", "Uint16Array.prototype.reduce()")}}
+
Apply a function against an accumulator and each value of the array (from left-to-right) as to reduce it to a single value. See also {{jsxref("Array.prototype.reduce()")}}.
+
{{jsxref("TypedArray.reduceRight", "Uint16Array.prototype.reduceRight()")}}
+
Apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value. See also {{jsxref("Array.prototype.reduceRight()")}}.
+
{{jsxref("TypedArray.reverse", "Uint16Array.prototype.reverse()")}}
+
Reverses the order of the elements of an array — the first becomes the last, and the last becomes the first. See also {{jsxref("Array.prototype.reverse()")}}.
+
{{jsxref("TypedArray.set", "Uint16Array.prototype.set()")}}
+
Stores multiple values in the typed array, reading input values from a specified array.
+
{{jsxref("TypedArray.slice", "Uint16Array.prototype.slice()")}}
+
Extracts a section of an array and returns a new array. See also {{jsxref("Array.prototype.slice()")}}.
+
{{jsxref("TypedArray.some", "Uint16Array.prototype.some()")}}
+
Returns true if at least one element in this array satisfies the provided testing function. See also {{jsxref("Array.prototype.some()")}}.
+
{{jsxref("TypedArray.sort", "Uint16Array.prototype.sort()")}}
+
Sorts the elements of an array in place and returns the array. See also {{jsxref("Array.prototype.sort()")}}.
+
{{jsxref("TypedArray.subarray", "Uint16Array.prototype.subarray()")}}
+
Returns a new Uint16Array from the given start and end element index.
+
{{jsxref("TypedArray.values", "Uint16Array.prototype.values()")}}
+
Returns a new Array Iterator object that contains the values for each index in the array. See also {{jsxref("Array.prototype.values()")}}.
+
{{jsxref("TypedArray.toLocaleString", "Uint16Array.prototype.toLocaleString()")}}
+
Returns a localized string representing the array and its elements. See also {{jsxref("Array.prototype.toLocaleString()")}}.
+
{{jsxref("TypedArray.toString", "Uint16Array.prototype.toString()")}}
+
Returns a string representing the array and its elements. See also {{jsxref("Array.prototype.toString()")}}.
+
{{jsxref("TypedArray.@@iterator", "Uint16Array.prototype[@@iterator]()")}}
+
Returns a new Array Iterator object that contains the values for each index in the array.
+
+ +

Examples

+ +
// From a length
+var uint16 = new Uint16Array(2);
+uint16[0] = 42;
+console.log(uint16[0]); // 42
+console.log(uint16.length); // 2
+console.log(uint16.BYTES_PER_ELEMENT); // 2
+
+// From an array
+var arr = new Uint16Array([21,31]);
+console.log(arr[1]); // 31
+
+// From another TypedArray
+var x = new Uint16Array([21, 31]);
+var y = new Uint16Array(x);
+console.log(y[0]); // 21
+
+// From an ArrayBuffer
+var buffer = new ArrayBuffer(8);
+var z = new Uint16Array(buffer, 0, 4);
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
Typed Array SpecificationObsoleteSuperseded by ECMAScript 6.
{{SpecName('ES6', '#table-45', 'TypedArray constructors')}}{{Spec2('ES6')}}Initial definition in an ECMA standard.
+ +

Browser compatibility

+ +

{{ CompatibilityTable() }}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support7.0{{ CompatGeckoDesktop("2") }}1011.65.1
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support4.0{{ CompatVersionUnknown() }}{{ CompatGeckoMobile("2") }}1011.64.2
+
+ +

See also

+ + diff --git a/files/pl/web/javascript/reference/global_objects/undefined/index.html b/files/pl/web/javascript/reference/global_objects/undefined/index.html new file mode 100644 index 0000000000..9b9460985f --- /dev/null +++ b/files/pl/web/javascript/reference/global_objects/undefined/index.html @@ -0,0 +1,40 @@ +--- +title: undefined +slug: Web/JavaScript/Referencje/Obiekty/undefined +tags: + - JavaScript +translation_of: Web/JavaScript/Reference/Global_Objects/undefined +--- +
+
+
{{jsSidebar("Objects")}}
+
+
+ +

Podsumowanie

+ +

Wartość niezdefiniowana.

+ +

{{js_property_attributes(0,0,0)}}

+ +

Składnia

+ +
undefined
+ +

Opis

+ +

undefined jest własnością najwyższego rzędu i nie jest przypisana do żadnego obiektu.

+ +

Zmienna, której nie przypisano wartości, jest typu undefined. Metoda lub wyrażenie zwraca undefined, jeśli wyliczana zmienna nie posiada wartości.

+ +

Można wykorzystać undefined do zbadania, czy dana zmienna ma wartość. W poniższym kodzie zmienna x nie jest zdefiniowana i wyrażenie if ma wartość "prawda" (true).

+ +
var x;
+if (x === undefined) {
+   // polecenia tu umieszczone są wykonywane
+} else {
+   // polecenia tu umieszczone nie są wykonywane
+}
+
+ +

undefined jest także wartością prostą.

-- cgit v1.2.3-54-g00ecf