/**
* created by z18630 on 2018/12/11 0011.
*///第六章 數值的擴充套件
//二進位制(0b)和八進位制(0o)表示法
console.log(0b110, number('0b110')); //number()把引數轉化為數字,無法轉換返回nan //6 6
console.log(0o23); //19
乙個數值是否為有限的
乙個數值是否為nan
//與傳統的全域性方法isfinite()和isnan()區別在於,傳統方法先呼叫number()轉化為數字,再進行判斷,新方
// 法只對數值有效
console.log(isfinite('25')); //true
console.log(number.isfinite('25')); //false
console.log(isnan('nan')); //true
console.log(number.isnan('nan')); //false
console.log('------------------');
//es6把全域性方法parseint(),parsefloat()移植到了number物件上
console.log(number.parseint('110', 2)); //6
console.log(number.parsefloat('12.3e4')); //只接受乙個引數 //123000
判斷是否為乙個整數
//在js整數個浮點數是同樣的儲存方法,所以3和3.0被視為同乙個值
console.log(number.isinteger(3.0)); //true
乙個極小的常量,為浮點數計算設定誤差範圍
//誤差檢查函式
function checkerror(num1,num2)
console.log(checkerror(0.111 + 0.2, 0.3), number.epsilon);
//false 2.220446049250313e-16
console.log('-----------------');
//安全整數:js表示的範圍在-2的53次方~2的53次方之間,不包含兩個端點
console.log(math.pow(2, 53)); //9007199254740992
console.log(math.pow(2, 53) + 1 === math.pow(2, 53)); //和math.pow(2, 53)值相等
//true
和number.min_safe_integer表示安全整數的上下限
console.log(number.max_safe_integer === math.pow(2, 53) - 1); //true
console.log(number.min_safe_integer === math.pow(-2, 53) + 1); //true
判斷乙個整數是否落在安全範圍內
//判斷運算結果是否在安全範圍,需要同時驗證兩個運算數和運算結果
function issafere(num1, num2, re) else
}console.log(issafere(math.pow(2,53) + 7, 7,
math.pow(2, 53) + 7 - 7)); //false
console.log('------------------');
//math物件的擴充套件
去除乙個數的小數部分
console.log(math.trunc('12.4')); //12
math.trunc = math.trunc || function(x) ;
判斷乙個數是正數(返回1)、負數(返回-1),還是0(返回0或-0)
math.sign = math.sign || function (x)
return x < 0 ? -1 : 1;
};console.log(math.sign(-0)); //-0
計算乙個數的立方根
math.cbrt = math.cbrt || function (x) ;
console.log(math.cbrt(-8)); //-2
console.log('-------------');
返回乙個數的32位無符號整數有多少個前導0
console.log(math.clz32(1 >> 1)); //32
console.log(math.clz32('1')); //31
返回兩個帶符號32位整數相乘結果,當結果溢位(超過2的53次方)時,可以返回正確的低位數值
console.log((0x7fffffff * 0x7fffffff)|0); //0
console.log(math.imul(0x7fffffff, 0x7fffffff)); //1
返回乙個數的單精度浮點形式
console.log(math.fround(1.37));
返回所有引數的平方和的平方根
console.log(math.hypot(3,4)); //5
//指數運算子**
// console.log(2 ** 3);
// let sw = 2;
// sw **= 3;
// console.log(sw);
//integer資料型別
// console.log(typeof 123n);
ES第六章 正則的擴充套件
1 引數字串,引數一位字串,此時第二個引數表示正規表示式的修飾符 flag var regex new regexp xyz i 等價於var regex xyz i 2 正規表示式,引數一為正規表示式,此時會返回原有的正規表示式 var regex new regexp xyz i 等價於 var...
第六章 學習筆記
1.引數分為位置引數和關鍵字引數。def func positional para x,y,z passdef func keyword para kwd1 1,kwd2 4,kwd3 9 pass2.1 當有多個位置引數時,可以用乙個星號來收集引數,函式內使用這些位置引數時可以通過for 迴圈依次...
第六章學習記錄
教材學習內容總結 1 使用關鍵字inte ce來定義乙個介面,介面的定義分為介面宣告和介面體 inte ce printable 2 介面提中包含常量的宣告 沒有變數 和抽象方法 介面體只有抽象的方法,沒有普通的方法,而且介面體中所有的常量的訪問許可權一定都是public,而且是static常量,所...