में स्ट्रिंग तुलना मैं AngularJS में दो तारों की तुलना करने की कोशिश कर रहा हूं, और मैंने उदाहरण ऑनलाइन देखे हैं। जैसा कि मैं इसे समझता हूं, आप angular.equals (str1, str2) का उपयोग कर सकते हैं, आप === का उपयोग कर सकते हैं, आप == का उपयोग कर सकते हैं यदि आप सुनिश्चित हैं कि दोनों तार हैं ...AngularJS
मैंने सभी को आजमाया है तीन, लेकिन मुझे परिणाम नहीं मिला। मैंने जो किया है उसमें कुछ गलत होना चाहिए, लेकिन मुझे नहीं पता कि यह क्या है।
जब मैं कोड चलाता हूं, inc1() फ़ंक्शन को कॉल किया जाता है। पहली चेतावनी "inc1 कहा जाता है" दिखाई देता है। लेकिन दूसरी चेतावनी, "लूप के अंदर", केवल एक बार निष्पादित करता है। इसे दो बार निष्पादित करना चाहिए, है ना?
और अगर (स्थिति) के अंदर चेतावनी बिल्कुल निष्पादित नहीं होती है। अगर मैं 'if' ब्लॉक को हटा देता हूं, तो "लूप के अंदर" चेतावनी दो बार चलती है।
अगर कोई मुझे बता सकता है कि मैं यहां क्या कर रहा हूं तो मुझे बहुत बाध्य होना होगा। मैंने angular.equals(), === और == का उपयोग किया है, लेकिन वही बात हर बार होती है।
एचटीएमएल:
<a class="tab-item" ng-repeat = "x in items" ng-if="name==x.names" ng-click="inc1(name)">
<i class="icon ion-thumbsup"></i>
Like
</a>
AngularJS:
$rootScope.items = [
{ id: 1, names: 'Dolphin', image: 'dolphin.jpg'}, { id: 2, names: 'Donkey', image: 'donkey.jpg'}];
$scope.inc1 = function(name) {
alert("inc1 called");
for(var i=0;i<$rootScope.items.length;i++)
{
alert("Inside for loop");
if (name === $rootScope.items.names[i])
{
alert("If condition satisfied");
}
}
}
// कहो, नाम है 'डॉल्फिन'
अलर्ट शायद डीबग करने का एक शानदार तरीका नहीं है, तो क्रोम https://developer.chrome.com/devtools/docs/javascript-debugging में डिबगिंग की जांच करना या कंसोल पर कम से कम लॉग इन करना उपयोगी हो सकता है https: // developer.chrome.com/devtools/docs/console#writing-to-the-console – Cameron
ओह ठीक है धन्यवाद! मैं इसे देख लूँगा! :) – Anusha