// 声明变量
// 字符串
var str1 = 'this is a string'
var str2 = 'this is another string'
var str3 = str1 + str2
console.log('str1 + str2 = ' + str3) // str1 + str2 = this is a stringthis is another string
// number
var num1 = 19
var num2 = 1.22
var num3 = num1 + num2
console.log(num3) // 20.22
// 声明但未赋值的变量
var v
console.log('已声明但未赋值的变量=' + v) // 声明但未赋值的变量=undefined
var arr = ["1","2"]
console.log('获取数组中不存在的元素=' + arr[3]) // 获取数组中不存在的元素=undefined
var obj = {name: 'jack', age: 12}
// 获取对象中不存在的属性,返回undefined,如果请求不存在的方法,nodejs会报错
console.log('获取对象中存在的属性:' + obj.name) // 获取对象中存在的属性:jack
console.log('获取对象中不存在的属性:' + obj.smile) // 获取对象中不存在的属性:undefined
console.log('获取对象中不存在的方法:nodejs会报错,编译不会通过') // 获取对象中不存在的方法:nodejs会报错,编译不会通过
// 注意使用[]访问对象属性,属性名称必须添加引号
console.log(obj['name']) // jack
// 访问不存在的属性,返回undefined
console.log(obj['undefined']) // undefined
// 循环
var i = 0
while(i < 5){
console.log('while循环:i=' + i)
i++
}
var j = 0
do{
console.log('do while 循环:' + j)
j++
}while(j < 5)
console.log('循环后的结果:i=' + i + '; j=' + j)
// 原来数组真的可以for in
// 格式是 for(var index in array)
// 注意啊,这里的index是序号,不是array中的元素,如果需要访问数组中的元素,
// 需要使用array[index]访问
for(var idx in arr){
if(arr[idx] == '2'){
break
}
console.log('第' + idx + '个元素是:' + arr[idx]) // 第0个元素是:1
}
// 创建对象
// 注意:使用new object()的方式声明对象,Object的首字母o必须大写
var people1 = new Object()
people1.name = 'Jack'
people1.age = 12
people1.getFullName = function(){
return (people1.name + '的年纪是' + people1.age)
}
console.log(people1.getFullName())
var people2 = {
name: 'Lilei',
age: 21,
getFullName: function(){
// 注意:这里要调用name和age属性,必须使用this.+属性名这样的格式
// 不然会报undefined
return (this.name + '的年纪是' + this.age)
}
}
console.log(people2.getFullName())
// 注意:用function方法声明的类,必须使用new来创建实例
// 如果直接调用 p3=people('name',11)这样的写法,p3返回undefined
function People(name, age){
this.name = name
this.age = age
this.getFullName = function(){
// return (this.name + '的年纪是' + this.age)
return (name + '的年纪是' + age) // 这句和上面那句都能正确运行
}
var name1 = name
var age1 = age
function getFullName1(){
return (name1 + '的年纪是' + age1)
}
this.getFullName2 = function(){
return (name1 + '的年纪是' + age1)
}
}
var people3 = new People('Han meimei', 14)
console.log(people3.getFullName())
console.log('访问函数内使用var声明的变量,name1=' + people3.name1) // 访问函数内使用var声明的变量,name1=undefined
// console.log('访问函数内直接使用function定义的方法:' + people3.getFullName1()) // getFullName1未定义,nodejs报错
console.log('访问函数内直接使用this定义的方法调用var声明的变量:' + people3.getFullName2()) // 访问函数内直接使用this定义的方法调用var声明的变量:Han meimei的年纪是14
[nodejs入门]第一篇,javascript基础(1)
最新推荐文章于 2024-08-19 07:33:55 发布