js数组、对象...

tech2023-11-12  97

文章目录

js定义数组Undefined 和 Null声明变量类型用newjs对象访问对象属性:访问对象方法 JavaScript 变量的生存期向未声明的 JavaScript 变量分配值JavaScript 全局变量js字符串break和continue

js定义数组

<body> <!-- 定义数组 --> <!-- 1. --> var arr = new Array("uf","en"); <!-- 2. --> var arr = new Array(); arr[0] = "uf"; arr[1] = "en"; <!-- 3. --> var arr=["uf",en""]; <!-- 二维数组 --> var arr = new Array(); arr[0] = new Array("a","b"); arr[1] = new Array("c","b"); </body>

Undefined 和 Null

Undefined 这个值表示变量不含有值。可以通过将变量的值设置为 null 来清空变量。

声明变量类型用new

var carname=new String; var x= new Number; var y= new Boolean; var cars= new Array; var person= new Object;

js对象

var person={ firstname : "John", lastname : "Doe", id : 5566, fullName : function() { return this.firstName + " " + this.lastName; } };

访问对象属性:

1. name=person.lastname; 2. name=person["lastname"]; 3. document.getElementById("demo1").innerHTML = "不加括号输出函数表达式:" + person.fullName;

访问对象方法

<script> var person = { firstName: "John", lastName : "Doe", id : 5566, fullName : function() { return this.firstName + " " + this.lastName; } }; document.getElementById("demo").innerHTML = person.fullName(); </script>

总结:加括号,方法执行;不加括号,返回函数。

JavaScript 变量的生存期

JavaScript 变量的生命期从它们被声明的时间开始。

局部变量会在函数运行以后被删除。

全局变量会在页面关闭后被删除。

向未声明的 JavaScript 变量分配值

如果您把值赋给尚未声明的变量,该变量将被自动作为 window 的一个属性。

这条语句:carname=“Volvo”; 将声明 window 的一个属性 carname。

非严格模式下给未声明变量赋值创建的全局变量,是全局对象的可配置属性,可以删除。

var var1 = 1; // 不可配置全局属性 var2 = 2; // 没有使用 var 声明,可配置全局属性 console.log(this.var1); // 1 console.log(window.var1); // 1 console.log(window.var2); // 2 delete var1; // false 无法删除 console.log(var1); //1 delete var2; console.log(delete var2); // true console.log(var2); // 已经删除 报错变量未定义

JavaScript 全局变量

变量在函数外定义,即为全局变量。全局变量有全局作用域: 网页中所有脚本和函数均可使用。注:如果变量在函数内没有声明(没有使用 var 关键字),该变量为全局变量。在 HTML 中, 全局变量是 window 对象: 所有数据变量都属于 window 对象。 <body> <p> 如果你的变量没有声明,它将自动成为全局变量: </p> <p id="demo"></p> <script> myFunction(); document.getElementById("demo").innerHTML = "我可以显示 " + carName; function myFunction() { carName = "Volvo"; } </script> </body>

js字符串

在字符串中使用引号,字符串中的引号不要与字符串的引号相同:

var answer = “He is called ‘Johnny’”; var answer = ‘He is called “Johnny”’;

在字符串添加转义字符来使用引号:

var x = 'It\‘s alright’; var y = “He is called \“Johnny\””;

输出: 字符串可以是对象

<body> <p id="demo"></p> <script> var x = "John"; // x 是字符串 var y = new String("John"); // y 是一个对象 document.getElementById("demo").innerHTML = x===y; </script> <p>=== 为绝对相等,即数据类型与值都必须相等。</p> </body>

=== 为绝对相等,即数据类型与值都必须相等

break和continue

无论是在java还是js中: break可以用在循环或者switch中,continent只可以用在循环体中,因为switch是顺序执行的。

最新回复(0)