JavaScript 入门基础语法

var num = 123;// 注释 
"输出"        //  说明
// debug(num);
console.log(num)
// Number类型:用来表示整形和浮点型,还有特殊类型,非数值类型


// 非数值类型NaN
// 定义:表示一个本来要返回数值的操作数未返回数值的情况
// 特点:1.任何涉及操作NaN的操作,都会返回NaN
//      2.NaN与任何数值都不相等,包括本身
// 断言
if (NaN=NaN) {
console.log("true")
}else{
console.log("false")
};


if (isNaN(",,")) { // 任何不能转换为数值的返回true 
console.log("true")
}else{
console.log("false")
};


// 可以把非数值转换为数值的三个函数
var a1 = Number("") // 0 
var a2 = Number("hello world") // NaN
var a3 = Number(0101) // 65  以0开头默认转换为8进制


// parseInt 防御式编程
var a4 = parseInt("0xa") // 10 以0开头默认转换为8进制
var a5 = parseInt("a") // NaN
var a6 = parseInt("123a1234") // 123   解析前面
var a7 = parseInt("0123.1") // 123   解析前面
var a8 = parseInt("11",2) // 3  将11按照2进制转换 


// parseFloat 区别:能解析出小数部分且只解析10进制
var a9 = parseFloat("0.1235")


console.log(a1,a2,a3,a4,a5,a6,a7,a8,a9)




// String类型用于表示0或多个字符(16位Unicode字符)组成的字符序列


var str1 = 'hello'
var str2 = "world" // 单引号或者双引号
console.log(str1,str2)
console.log(str1.length) // 字符串长度


// 字符串转换函数toString()
var age = 5
var ageStr = age.toString()
console.log(typeof(ageStr)) // string 


var b = true
var bStr = b.toString()
console.log(typeof(bStr),bStr) // string true


var m = 12
var mStr = m.toString(2) // 1100 参数解释:转换为n进制的字符串
console.log(mStr)




// 在转换的值不确定状态下可以使用转型函数String()
var v1 = 10
var v2 = true
var v3 = null
var v4 
console.log(String(v1))
console.log(String(v2))
console.log(String(v3))
console.log(String(v4))
console.log(typeof(v2)) // boolean
console.log(typeof(v3)) // object
console.log(typeof(v4)) // undefined


// Array数组类型
// 无参数的构造函数,创建一个空数组
var arr1 = new Array() 
// 一个整形参数为数组的长度(系统分配内存使用) 
var arr2 = new Array(5) 
// 带有初始数据的构造函数
var arr3 = new Array(4,"string",new Date())
console.log(arr1.length,arr2.length,arr3.length)// 0 2 3
// 调用不带参数的构造函数
var arr4 = []
// 一个数组元素
var arr5 = [6]
console.log(arr5.length)
console.log(arr2)  // [ , , , , ]
console.log(arr5)  // [6]


var a = new Array(1,2,3,4)
a.push(5)
console.log(a)


a.shift() // 移除第一个位置的元素(返回的是第一个元素)
a.unshift(100) // 把参数添加到第一个位置(返回的是数组的长度)
// var temp = a.pop() // 移除最后一个元素(返回一个元素)
console.log(b)
// console.log(temp)




var date = Date()
console.log(date)
// var hour = date.gethour()




// for循环
for (var i = 0; i < 5; i++) {
console.log(i)
};
// 快速遍历
var a = [10,20,30,40]
for (var i in a) {
console.log(i,a[i])
};


// 函数 
function print(){
console.log("this is a function")
}


print() // 调用


// 带参数的函数
function add(num1,num2){
console.log(num1+num2)
}
add(12,23,45) // 多余的参数被忽略掉,少的参数则会出错NaN


// JSON对象
var myobject = {}
// 给对象设置属性和方法
var student1 = {name:"张三",age:18,married:false}
var student = {name:"李四",show:function(){
console.log("我叫李四")
}}
console.log(student.name)//  点操作符
console.log(student["name"])
student.show()
console.log(student1.age)


// Date对象
var myDate = new Date()
console.log(myDate)
var myDate2 = new Date(1000) // 参数为1970+毫秒的时间
console.log(myDate2)
var myDate3 = new Date("2016.6.1 10:13:13") // 注意格式
console.log(myDate3)


console.log(myDate.getDate())// 获取天
console.log(myDate3.getDay())// 获取星期几
console.log(myDate.getFullYear())// 获取年份
console.log(myDate.getHours())// 获取当前小时
console.log(myDate.getMinutes() )// 获取当前分钟
console.log(myDate.getSeconds() )// 获取当前秒
console.log(myDate.getMilliseconds() )// 获取当前毫秒
console.log(myDate.getTime() )// 距1970到现在的毫秒数
console.log(myDate.getTimezoneOffset() )// 距格林尼治标准时间分钟差 




// 面向对象
var people = {
name:"张三",
age:20,
sex:"男",
eat:function(stuff){
console.log("张三在吃"+stuff)
}
};


people.height = 175;
delete people["age"]
people.eat("苹果")


console.log(people)


// 形式二
function HelloWorld(){
this.name = "李四",
this.print = function(){
return "js"
}
}


var hw = new HelloWorld()
console.log(hw.print())
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值