其他参阅手册
CSSStyleDeclaration
JS 类型转化
JavaScript Array slice() 办法
shift()
some()
JavaScript Array 参阅手册
界说和用法
slice() 办法以新的数组目标,回来数组中被选中的元素。
slice() 办法挑选从给定的 start 参数开端的元素,并在给定的 end 参数处完毕,但不包括。
注释:slice() 办法不会改动原始数组。
实例
比如 1
从数组中挑选元素:
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1, 3);
亲身试一试
比如 2
运用负值挑选元素:
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var myBest = fruits.slice(-3, -1);
亲身试一试
语法
array.slice(start, end)
参数值
参数
描绘
start
可选。整数,指定从哪里开端挑选(第一个元素的索引为 0)。
运用负数从数组的结尾进行挑选。假如省掉,则类似于 "0"。
end
可选。整数,指定完毕挑选的方位。
假如省掉,将挑选从开端方位到数组结尾的一切元素。运用负数从数组结尾进行挑选。
技能细节
回来值:
新的数组,包括选定的元素。
JavaScript 版别:
ECMAScript 1
浏览器支撑
一切浏览器都彻底支撑 slice() 办法:
Chrome
IE
Edge
Firefox
Safari
Opera
Chrome
IE
Edge
Firefox
Safari
Opera
支撑
支撑
支撑
支撑
支撑
支撑
相关页面
教程:JavaScript 数组
教程:JavaScript 数组 Const
教程:JavaScript 数组办法
教程:JavaScript 排序数组
教程:JavaScript 数组迭代
shift()
some()
JavaScript Array 参阅手册
JavaScript 和 HTML DOM 参阅手册
JavaScript 实例
JavaScript 检验
JavaScript 教程
W3School 简体中文版供给的内容仅用于训练和测验,不确保内容的正确性。经过运用本站内容随之而来的危险与本站无关。版权一切,保存一切权利。
关于 W3School
协助 W3School
运用条款
隐私条款
技能支撑:赢科
蒙ICP备06004630号
Array.prototype.slice() - JavaScript | MDN
y.prototype.slice() - JavaScript | MDNSkip to main contentSkip to searchSkip to select languageMDN Web DocsOpen main menuReferencesReferencesOverview / Web TechnologyWeb technology reference for developersHTMLStructure of content on the webCSSCode used to describe document styleJavaScriptGeneral-purpose scripting languageHTTPProtocol for transmitting web resourcesWeb APIsInterfaces for building web applicationsWeb ExtensionsDeveloping extensions for web browsersWeb TechnologyWeb technology reference for developersGuidesGuidesOverview / MDN Learning AreaLearn web developmentMDN Learning AreaLearn web developmentHTMLLearn to structure web content with HTMLCSSLearn to style content using CSSJavaScriptLearn to run scripts in the browserAccessibilityLearn to make the web accessible to allPlusPlusOverviewA customized MDN experienceAI Help (beta)Get real-time assistance and supportUpdatesAll browser compatibility updates at a glanceDocumentationLearn how to use MDN PlusFAQFrequently asked questions about MDN PlusCurriculumNewBlogPlayAI Help BetaSearch MDNClear search inputSearchThemeLog inSign up for freeWeb 开发技能JavaScriptJavaScript 参阅JavaScript 标准内置目标ArrayArray.prototype.slice()Article Actions中文 (简体)此页面由社区从英文翻译而来。了解更多并参加 MDN Web Docs 社区。Filter sidebarClear filter inputIn this article测验一下语法参数描绘示例标准浏览器兼容性拜见标准内置目标Array结构函数Array() constructor特点Array[@@species]Array.prototype[@@unscopables]Array: length办法Array.prototype[@@iterator]()Array.prototype.at()Array.prototype.concat()Array.prototype.copyWithin()Array.prototype.entries()Array.prototype.every()Array.prototype.fill()Array.prototype.filter()Array.prototype.find()Array.prototype.findIndex()Array.prototype.findLast()Array.prototype.findLastIndex()Array.prototype.flat()Array.prototype.flatMap()Array.prototype.forEach()Array.from()Array.fromAsync()Array.prototype.includes()Array.prototype.indexOf()Array.isArray()Array.prototype.join()Array.prototype.keys()Array.prototype.lastIndexOf()Array.prototype.map()Array.of()Array.prototype.pop()Array.prototype.push()Array.prototype.reduce()Array.prototype.reduceRight()Array.prototype.reverse()Array.prototype.shift()Array.prototype.slice()Array.prototype.some()Array.prototype.sort()Array.prototype.splice()Array.prototype.toLocaleString()Array.prototype.toReversed()Array.prototype.toSorted()Array.prototype.toSpliced()Array.prototype.toString()Array.prototype.unshift()Array.prototype.values()Array.prototype.with()承继Function结构函数Function() constructor特点Function.prototype.arguments非标准
已弃用
Function.prototype.caller
非标准
已弃用
Function: displayName
非标准
Function: lengthFunction: nameFunction: prototype办法Function.prototype[@@hasInstance]()Function.prototype.apply()Function.prototype.bind()Function.prototype.call()Function.prototype.toString()Object特点Object.prototype.constructorObject.prototype.__proto__
已弃用
办法Object.prototype.__defineGetter__()
已弃用
Object.prototype.__defineSetter__()
已弃用
Object.prototype.__lookupGetter__()
已弃用
Object.prototype.__lookupSetter__()
已弃用
Object.prototype.hasOwnProperty()Object.prototype.isPrototypeOf()Object.prototype.propertyIsEnumerable()Object.prototype.toLocaleString()Object.prototype.toString()Object.prototype.valueOf()In this article测验一下语法参数描绘示例标准浏览器兼容性拜见Array.prototype.slice()slice() 办法回来一个新的数组目标,这一目标是一个由 start 和 end 决议的原数组的浅仿制(包括 start,不包括 end),其间 start 和 end 代表了数组元素的索引。原始数组不会被改动。测验一下语法jsslice()
slice(start)
slice(start, end)
参数
start 可选
提取开端处的索引(从 0 开端),会转化为整数。
假如索引是负数,则从数组结尾开端核算——假如 start < 0,则运用 start + array.length。
假如 start < -array.length 或许省掉了 start,则运用 0。
假如 start >= array.length,则不提取任何元素。
end 可选
提取停止处的索引(从 0 开端),会转化为整数。slice() 会提取到但不包括 end 的方位。
假如索引是负数,则从数组结尾开端核算——假如 end < 0,则运用 end + array.length。
假如 end < -array.length,则运用 0。
假如 end >= array.length 或许省掉了 end,则运用 array.length,提取一切元素直到结尾。
假如 end 在标准化后小于或等于 start,则不提取任何元素。
回来值一个含有被提取元素的新数组。描绘slice() 办法是一个仿制办法。它不会改动 this,而是回来一个浅仿制,其间包括了原始数组的一部分相同的元素。
slice() 办法会保存空槽。假如被切片的部分是稀少的,则回来的数组也是稀少的。
slice() 办法是通用的。它只要求 this 上有 length 特点和整数键特点。示例回来现有数组的一部分jsconst fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
const citrus = fruits.slice(1, 3);
// fruits 包括 ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango']
// citrus 包括 ['Orange','Lemon']
运用 slice在下例中,slice 从 myCar 创立了一个新数组 newCar。两个数组都包括了一个 myHonda 目标的引证。当 myHonda 的 color 特点改动为 purple,则两个数组中的对应元素都会随之改动。
js// 运用 slice 办法从 myCar 创立一个 newCar。
const myHonda = {
color: "red",
wheels: 4,
engine: { cylinders: 4, size: 2.2 },
};
const myCar = [myHonda, 2, "cherry condition", "purchased 1997"];
const newCar = myCar.slice(0, 2);
console.log("myCar =", myCar);
console.log("newCar =", newCar);
console.log("myCar[0].color =", myCar[0].color);
console.log("newCar[0].color =", newCar[0].color);
// 改动 myHonda 目标的 color。
myHonda.color = "purple";
console.log("The new color of my Honda is", myHonda.color);
console.log("myCar[0].color =", myCar[0].color);
console.log("newCar[0].color =", newCar[0].color);
上述代码输出:
jsmyCar = [
{ 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
The new color of my Honda is purple
myCar[0].color = purple
newCar[0].color = purple
在类数组目标上调用 slice()slice() 办法会读取 this 目标的 length 特点,然后从 start 到 end 读取整数键特点,并将它们界说在一个新创立的数组中。
jsconst arrayLike = {
length: 3,
0: 2,
1: 3,
2: 4,
};
console.log(Array.prototype.slice.call(arrayLike, 1, 3));
// [ 3, 4 ]
运用 slice() 把类数组目标转化为数组slice() 办法常常与 bind() 和 call() 一同运用,用于创立一个有用办法,将类数组目标转化为数组。
js// 调用 slice() 办法时,会将 this 目标作为第一个参数传入
const slice = Function.prototype.call.bind(Array.prototype.slice);
function list() {
return slice(arguments);
}
const list1 = list(1, 2, 3); // [1, 2, 3]
在稀少数组上运用 slice()假如源数组是稀少数组,slice() 办法回来的数组也会是稀少数组。
jsconsole.log([1, 2, , 4, 5].slice(1, 4)); // [2, empty, 4]
标准SpecificationECMAScript Language Specification # sec-array.prototype.slice浏览器兼容性BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.拜见
core-js 中 Array.prototype.slice 的 polyfill
索引调集类
Array
Array.prototype.pop()
Array.prototype.shift()
Array.prototype.concat()
Array.prototype.splice()
TypedArray.prototype.slice()
String.prototype.slice()
Help improve MDNWas this page helpful to you?YesNoLearn how to contribute.This page was last modified on 2023年5月10日 by MDN contributors.View this page on GitHub• Report a problem with this contentMDN logoYour blueprint for a better internet.MDN on MastodonMDN on X (formerly Twitter)MDN on GitHubMDN Blog RSS FeedMDNAboutBlogCareersAdvertise with usSupportProduct helpReport an issueOur communitiesMDN CommunityMDN ForumMDN ChatDevelopersWeb TechnologiesLearn Web DevelopmentMDN PlusHacks BlogMozilla logoWebsite Privacy NoticeCookiesLegalCommunity Participation GuidelinesVisit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.Portions of this content are ©1998–2024 by individual mozilla.org contributors. Content available under a Creative Commons licen
JavaScript Array slice() 办法 | 菜鸟教程
JavaScript Array slice() 办法 | 菜鸟教程
菜鸟教程 -- 学的不仅是技能,更是愿望!
主页
HTML
CSS
JavaScript
Vue
Bootstrap
NodeJS
Python3
Python2
Java
C
C++
C#
Go
SQL
Linux
jQuery
本地书签
主页
HTML
CSS
JS
本地书签
Search
Python3 教程
Python2 教程
Vue3 教程
vue2 教程
Bootstrap3 教程
Bootstrap4 教程
Bootstrap5 教程
Bootstrap2 教程
JavaScript 参阅手册
概览
JavaScript 目标
JavaScript Array 目标
JavaScript Boolean 目标
JavaScript Date 目标
JavaScript Math 目标
JavaScript Number 目标
JavaScript String 目标
JavaScript RegExp 目标
JavaScript 大局特点/函数
JavaScript 运算符
JavaScript Error
Browser 目标
Window 目标
Navigator 目标
Screen 目标
History 目标
Location 目标
存储目标
DOM 目标
HTML DOM Document 目标
HTML DOM 元素目标
HTML DOM 特点目标
HTML DOM 事情目标
HTML DOM Console 目标
CSSStyleDeclaration 目标
DOM HTMLCollection
HTML 目标