Javascript 如何按索引对象属性值(字符串)进行切片?

Javascript 如何按索引对象属性值(字符串)进行切片?,javascript,slice,Javascript,Slice,我有一个目标: const text = { type: 'text', content: "some text", }; 我需要按索引对content属性的切片值,例如,如果我有index=4,则console.log(text.content)应打印: “一些” 看起来此代码不起作用: text.content.slice(0, index); 我还有 “一些文本” 在console.log(text.content)上 我误解了什么?看看string.substring

我有一个目标:

const text = {
    type: 'text',
    content: "some text",
};
我需要按索引对
content
属性的切片值,例如,如果我有
index=4
,则
console.log(text.content)
应打印:

“一些”

看起来此代码不起作用:

text.content.slice(0, index);
我还有

“一些文本”

console.log(text.content)


我误解了什么?

看看string.substring():

好了:


text.content.substring(0,索引)
查看string.substring():

好了:


text.content.substring(0,索引)
切片不会改变字符串。因此,如果您改为console.log(text.content.slice(0,index)),您将看到您要查找的结果。

slice不会改变字符串。因此,如果您改为console.log(text.content.slice(0,index)),您将看到您要查找的结果。

字符串是不可变的。您需要使用新的子字符串为属性赋值

const
text={type:'text',content:'some text},
指数=4;
text.content=text.content.slice(0,索引);//子串赋值

console.log(text.content)字符串是不可变的。您需要使用新的子字符串为属性赋值

const
text={type:'text',content:'some text},
指数=4;
text.content=text.content.slice(0,索引);//子串赋值

console.log(text.content)
字符串是不可变的
。您需要将
切片
值分配回
内容
const text={
键入:“文本”,
内容:“一些文字”,
};
常数指数=4;
text.content=text.content.slice(0,索引)

console.log(text)
字符串是不可变的
。您需要将
切片
值分配回
内容
const text={
键入:“文本”,
内容:“一些文字”,
};
常数指数=4;
text.content=text.content.slice(0,索引)
console.log(文本)
符合规范():

slice()方法提取字符串的一部分,并将其作为 新字符串,而不修改原始字符串

const text={
键入:“文本”,
内容:“一些文字”,
};
常数指数=4;
const result=text.content.slice(0,索引);
console.log(text.content);//一些文本
console.log(结果);//一些
text.content=结果;
console.log(text.content);//一些符合规范()的

slice()方法提取字符串的一部分,并将其作为 新字符串,而不修改原始字符串

const text={
键入:“文本”,
内容:“一些文字”,
};
常数指数=4;
const result=text.content.slice(0,索引);
console.log(text.content);//一些文本
console.log(结果);//一些
text.content=结果;


console.log(text.content);//一些
使用
text.content.substr(0,索引)而不是切片。一些数组运算符处理字符串,但不是全部。使用substr@SajeebAhamed,
substr
已弃用。建议使用
子字符串
。非常感谢。非常感谢。这是我的错。我只是想使用子字符串。@SajeebAhamed,我刚刚尝试将
splice
替换为
substring
,但仍然不起作用。但是我使用vue,所以它也可能是vue反应性的问题而不是切片。一些数组运算符处理字符串,但不是全部。使用substr@SajeebAhamed,
substr
已弃用。建议使用
子字符串
。非常感谢。非常感谢。这是我的错。我只是想使用子字符串。@SajeebAhamed,我刚刚尝试将
splice
替换为
substring
,但仍然不起作用。但我使用的是vue,所以这也可能是vue反应性的问题。我完成了一个任务,但没有成功。我也使用了vue,这可能是vue反应性的一个问题。我完成了一个任务,但没有成功。我也使用vue,这可能是vue反应性的一个问题。它现在与
slice
一起工作,但与赋值一起工作。感谢您指向
slice
的另一个选项。它现在与
slice
一起工作,但与赋值一起工作。感谢您指向
slice
的另一个选项。您关于
slice不会改变字符串的说法是正确的。非常感谢。关于
切片不会改变字符串的说法是正确的。非常感谢。我在作业中犯了一些错误,对我不起作用。现在它起作用了。非常感谢。我在作业中犯了一些错误,对我不起作用。现在它起作用了。非常感谢。我在作业中犯了一些错误,对我不起作用。现在它起作用了。非常感谢。我在作业中犯了一些错误,对我不起作用。现在它起作用了。非常感谢。