对象
没有对象的看过来 速度学会就有对象了
创建对象 访问对象属性
<p id=girl_friend></p>
<script>
var girlfriend = {name:"baby", age:18};
document.getElementById("girl_friend").innerHTML =
//访问属性有两种方法,下面是一种,还有一种表达是girlfriend["name"]和girlfriend["age"]
'my girlfriend is ' + girlfriend.name + ',she is ' + girlfriend.age + ' years old';
</script> //输出结果:my girlfriend is baby,she is 18 years old
访问对象方法
方法是作为属性来储存的函数,如果访问时不加(),则显示的是函数定义
<p id=girl_friend></p>
<p id=girl_friendx></p>
<script>
var girlfriend = {
name:"baby",
age:18,
all: function(){
return this.name + " " + this.age;
}
};
document.getElementById("girl_friend").innerHTML = girlfriend.all; //返回 fuction(){return this.name + " " + this.age;}
document.getElementById("girl_friendx").innerHTML = girlfriend.all();//返回 baby 18
</script>
字符串
- 由单引号或双引号包围
- 转义符\显示符号(
\
和"
一起,显示的是"
),\还可以在字符文本中起到换行的作用(建议用字符串加法来换行),但是不能对代码换行demo4
length
属性返回字符串长度demo2
indexOf()
方法返回指定文本首次出现的位置demo1
match()
找到指定文本并返回replace()
替换字符demo3
toUpperCase()
toLowerCase()
字符变大写/变小写demo5
<!DOCTYPE html>
<html>
<body>
<p id="demo1"></p>
<p id="demo2"></p>
<p id="demo3"></p>
<p id="demo4"></p>
<p id="demo5"></p>
<p id="demo6"></p>
<script>
var string1 = "This is easy";
var find_str = string1.indexOf("is");
var string2 = string1.replace("easy","no easy");
document.getElementById("demo1").innerHTML = find_str; //返回is的位置 2
document.getElementById("demo2").innerHTML = string1.length;//返回string1的长度
document.getElementById("demo3").innerHTML = string2; //把string1的字符更换后赋值给string2
document.getElementById("demo4").innerHTML = "换行\
可以吗"; // "\"字符文本的换行
//大小写改变
var view= document.getElementById("demo5").innerHTML;
document.getElementById("demo5").innerHTML = view.toUpperCase();
//拆分字符串存入数组
var string3 = "a,b,c,d,e,f";
var arr = string3.split(","); //新数组是原字符串以","分割的
document.getElementById("demo6").innerHTML = arr[0]; // arr[0]=a ,arr[1]=b以此类推
</script>
</body>
</html>
数字和数值方法
- 科学计数法:1e3 = 1000, 1e-3 = 0.001
- 浮点计算不一定是准确的,但是*10/10可以解决
- 除了加法运算,其他运算会尝试把数字字符串转化为数字进行计算
toString
可以改变进制
var x = 23;
a = x.toString(2); //二进制
b = x.toString(8); //八进制
c = x.toString(10); //十进制
d = x.toString(16); //十六进制
- 数字和对象不能比较,对象和对象也不可以
toString
方法:返回字符串数值
var x = 123;
x.toString(); // 从变量 x 返回 123
(123).toString(); // 从文本 123 返回 123
(100 + 23).toString(); // 从表达式 100 + 23 返回 123
toExponential()
方法:返回字符串数值,参数可选,设置参数进行四舍五入保留小数位数
var x = 1.23;
x.toExponential(); //返回 1.23e+0
x.toExponential(1); //返回 1.2e+0
x.toExponential(3); //返回 1.230e+0
x.toExponential(6); //返回 1.230000e+0
toFixed
方法:返回字符串数值,包含了指定位数小数的数字
var x = 1.23;
x.toFixed(0); //返回1
x.toFixed(2); //返回1.23
x.toFixed(4); //返回1.2300
x.toFixed(5); //返回1.23000
toPrecision()
方法:返回字符串数值,它包含了指定长度的数字
var x = 6.66;
x.toPrecision(); // 返回 6.66
x.toPrecision(2); // 返回 6.7
x.toPrecision(5); // 返回 6.6600
valueOf()
方法:数值返回数值
var x = 123;
全局方法
Number()
方法:将变量转化为数值
var x=true; Number(x); //返回1
var x=false; Number(x);//返回0
var x=10; Number(x); //返回10
var x="10 20"; Number(x); //返回NaN,Not a Number
用于时间,返回1970-01-01至今的毫秒数
Number(new Data("2020-05-01")); //返回1588291200000
parseInt
方法:解析字符串并返回数值,返回首个数字
parseInt("10"); //返回10
parseInt("10.11"); //返回10
parseInt("10 20 30"); //返回10
parseInt("num 10"); //返回NaN
parseFloat()
方法:和parseInt()类似,但是会返回浮点型
parseFloat("10"); //返回10
parseFloat("10.11"); //返回10.11
parseFloat("10 20 30"); //返回10
parseFloat("num 10"); //返回NaN
数值属性
都只能用作为Number的属性访问,其他的将返回
undefined
- MAX_VALUE:返回JavaScript中可能的最大数
- MIN_VALUE:返回JavaScript中可能的最大数
- NEGATIVE_INFINITY:返回
infinity
- POSITIVE_INFINITY:返回
-infinity
- NaN:非数值