Javascript,当我们给只读数据属性赋值时会发生什么,比如字符串长度?
Javascript, what happens when we assign value to read-only data property such as string length?
假设我们有一个字符串,长度是字符串的只读数据属性。如果我们无意中将值赋给长度为 属性 的字符串会怎样?为什么 javaScript return 结果是那些值?
例如,如果我们 运行 这部分代码:
var str="test";
console.log(str.length)
console.log(str.length=3)
输出应该是这样的:
4
3
第三行代码returns 3、我的问题是为什么赋值在javaScriptreturns操作数的右边而不是左边呢?
赋值运算符总是returns右边的值。因此,在 console.log 函数中传递表达式 returns 右边的值,在你的例子中是 3.
为字符串的长度 属性 分配任何值都无效。
let myString = "Hello,World!";
myString.length = 4;
console.log(myString);
// expected output: "Hello,World!"
console.log(myString.length);
// expected output: 12
假设我们有一个字符串,长度是字符串的只读数据属性。如果我们无意中将值赋给长度为 属性 的字符串会怎样?为什么 javaScript return 结果是那些值?
例如,如果我们 运行 这部分代码:
var str="test";
console.log(str.length)
console.log(str.length=3)
输出应该是这样的:
4
3
第三行代码returns 3、我的问题是为什么赋值在javaScriptreturns操作数的右边而不是左边呢?
赋值运算符总是returns右边的值。因此,在 console.log 函数中传递表达式 returns 右边的值,在你的例子中是 3.
为字符串的长度 属性 分配任何值都无效。
let myString = "Hello,World!";
myString.length = 4;
console.log(myString);
// expected output: "Hello,World!"
console.log(myString.length);
// expected output: 12