㈠ 利用js編寫的幾種常見演算法
學過C嗎?學過別的語言嗎?別的語言有什麼排序演算法JS就有什麼!只是語言不一樣而已~並不代表JS就不能實現~
㈡ js實現演算法:幾組數據的組合問題
vardata=[["A","B","C"],["D","E"],[1,2]];
functioncombine(arr){
if(arr.length>1){
varlen1=arr[0].length,len2=arr[1].length,newArr=arr.slice(0),temp=[];
for(vari=0;i<len1;i++){
for(varj=0;j<len2;j++){
temp.push(arr[0][i]+arr[1][j])
}
}
newArr.splice(0,2,temp);
returnarguments.callee(newArr)
}
returnarr[0]
}
console.log(combine(data))
㈢ js 乘法運算
<script type="text/javascript">
function G(e){return document.getElementById(e);}
</script>
單價:<input type="text" id="p" name="price" onkeyup="this.value=this.value.replace(/[^0-9\.]/g,'');" />
數量:<input type="text" id="c" name="count" onkeyup="this.value=this.value.replace(/[^0-9\.]/g,'');G('total').value=G('c').value*G('p').value;" />
金額:<input type="text" id="total" name="total" />
注意:input元素 以及HTML 任何元素的 ID 都是唯一的,也就是說 你還想增加行這樣的效果
那麼請在 id 和 name 屬性中 後面加不同的後綴來保證ID 和 name 的唯一性,另外還要改動 一點JS
下面是兩條的情況 ,你注意看規律,自己看明白:
<script type="text/javascript">
function G(e){return document.getElementById(e);}
</script>
單價:<input type="text" id="p" name="price" onkeyup="this.value=this.value.replace(/[^0-9\.]/g,'');" />
數量:<input type="text" id="c" name="count" onkeyup="this.value=this.value.replace(/[^0-9\.]/g,'');G('total').value=G('c').value*G('p').value;" />
金額:<input type="text" id="total" name="total" /><br>
單價:<input type="text" id="p1" name="price1" onkeyup="this.value=this.value.replace(/[^0-9\.]/g,'');" />
數量:<input type="text" id="c1" name="count1" onkeyup="this.value=this.value.replace(/[^0-9\.]/g,'');G('total1').value=G('c1').value*G('p1').value;" />
金額:<input type="text" id="total1" name="total1" />
㈣ JavaScript裡面的演算法是什麼意思
就是演算法,比如快速排序演算法。
演算法都一樣,到了javascript中只能用js的語法寫。演算法比較抽象,舉個例子吧!比如你現在要吃飯,要燒水,要做飯,要看電影。怎麼辦呢?你可以先做飯然後吃飯燒水再看電影,但時間花的長,現在如果你先把水燒著,燒水是熱水器的事,你就可以做飯了,飯做完了,這時水也燒好了。現在你再一邊看電影一邊吃飯,這樣你就省了很多時間。這兩種做法就是兩種不同的演算法,當然還有其他的做法也就是演算法,但是第二種演算法肯定是一種好的演算法,因為效率比第一種高多了。在編程里,用某種對應的語言把要做的事表達出來就是一種演算法,當然我們會想著用最好的演算法,所以現在也有演算法和數據結構這門學問。
㈤ js數組組合演算法。
var arr一 = [一,二,三,四,5,陸,漆,吧,9]; var arr = arr一.map(function(item,index,array){ return item*item*item; }) 返新數組arr則元素立運算新數
㈥ JS這樣的演算法怎麼實現
得到總長度,計算比列,然後把寬度設置成相應比例就OK了
㈦ 求一個js演算法問題,幾個循環比較多,頭都大了,請大神幫忙看一下
<!DOCTYPEhtml>
<html>
<head>
<title></title>
<script>
//根據樓主的提示,在個數方面,我個人的理解只是算上「頭」和「尾」兩個數的,而且只算奇數個數,我感覺有些地方理解的不對,但信息上看總覺得有缺陷
//1.比如勾了一奇一偶的情況下,個數勾了1和2,個數是分開算還是一起算?分開算的話又怎麼算?
//2.除了首尾以外,中間的數組元素算在個數當中嗎?有什麼規則呢?
(function(){
varresult=true;
vararray=[1,2,3,4,6];
varconditions={
head:true,//false:奇,true:偶
tail:true,//false:奇,true:偶
count:0
}
if(conditions.count>3){
result=false;
}else{
varfirstNumber=array[0],lastNumber=array.pop();
//判斷龍頭的奇偶性
varhead=firstNumber%2===0;
//判斷鳳尾的奇偶性
vartail=lastNumber%2===0;
//計算奇數的個數,我個人的理解只是算上「頭」和「尾」兩個數的,而且只算奇數個數
varoldCount=0;
if(head!=tail){
oldCount=1;
}else{
oldCount=head?0:2;
}
/*
*兩個相同存在特殊判斷
*/
if(conditions.head==conditions.tail){
if(conditions.head&&conditions.count>0){
result=false;
}
if(conditions.head==false&&conditions.count!=oldCount){
result=false;
}
}
else{
if(conditions.head!=head||conditions.tail!=tail||conditions.count!=oldCount){
result=false;
}
}
}
alert(result);
})()
</script>
</head>
<body>
</body>
</html>
㈧ js用什麼方法進行數字計算
可以直接將數字進行計算
functionAdd(num1,num2){
return(num1+num2);//返回num1和num2的和
//return(num1-num2);//返回num1和num2的差
//return(num1*num2);//返回num1和num2相乘結果
//return(num1/num2);//返回num1和num2相除結果
}
返回由字元串轉換得到的整數。
parseInt(numString, [radix])
參數:numString 必選項。要轉換為數字的字元串。
radix 可選項。在 2 和 36 之間的表示 numString 所保存數字的進制的值。如果沒有提供,則前綴為 '0x' 的字元串被當作十六進制,前綴為 '0' 的字元串被當作八進制。所有其它字元串都被當作是十進制的。
說明 :parseInt 方法返回與保存在 numString 中的數字值相等的整數。如果 numString 的前綴不能解釋為整數,則返回 NaN(而不是數字)。
parseInt("abc") // 返回 NaN。
parseInt("12abc") // 返回 12。
可以用 isNaN 方法檢測 NaN。
-----------------------------
floor 返回不大於的最大整數
round 則是4舍5入的計算,入的時候是到大於它的整數
ceil 則是不小於他的最小整數
㈨ 如何用js實現線性回歸演算法
可以用函數 regress( )來解決。
[b,bint,r,rint,stats] = regress(y,X)
b——擬合線性函數的系數
bint——系數b的置信區間
r——殘值向量
rint——殘值的置信區間
stats——檢驗統計量,第一值是回歸方程的置信度,第二值是F統計量,第三值是與F統計量相應的p值,當p值很小,說明回歸模型成立
X——自變數向量,X=[ones(3,1) x1 x2 x3]
y——應變數向量